You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Strapi v3部署于IIS,Microsoft/AAD认证返回404问题求助

解决Strapi v3.x IIS反向代理下微软授权跳转错误的配置方法

1. 配置Strapi的外部访问URL

Strapi需要明确自身的外部访问地址,否则生成第三方授权链接时会误用内部地址。

  • 打开Strapi项目的config/server.js文件,修改url字段为你的实际外部域名:
module.exports = ({ env }) => ({
  host: env('HOST', '0.0.0.0'),
  port: env.int('PORT', 1337),
  url: env('PUBLIC_URL', 'http://mystrapiapp.com'), // 替换为你的站点外部URL
});
  • 若使用环境变量管理配置,确保IIS站点对应的PUBLIC_URL环境变量已设置为正确的外部地址。

2. 配置IIS反向代理的URL重写规则

需要通过URL重写规则传递真实请求头,让Strapi识别外部访问信息:

  • 打开IIS管理器,找到MyStrapiApp站点,进入URL重写模块。
  • 编辑已有的反向代理规则,在服务器变量标签下添加以下变量:
    • HTTP_X_FORWARDED_PROTO:值设为http(启用HTTPS则设为https)
    • HTTP_X_FORWARDED_HOST:值设为{HTTP_HOST}
    • HTTP_X_FORWARDED_PORT:值设为{SERVER_PORT}
  • 确认规则的操作标签中,重写URL设置正确(例如http://localhost:1337/{R:0}),并且勾选追加查询字符串选项。

3. 验证微软OAuth插件配置

检查Strapi内微软OAuth插件的配置项:

  • 确认授权URL为完整的https://login.microsoftonline.com/common/oauth2/v2.0/authorize,未被错误修改。
  • 回调URL设置为http://mystrapiapp.com/connect/microsoft/callback,确保与Azure AD应用中配置的回调地址完全一致。

4. 重启服务生效

  • 重启Strapi应用进程。
  • 重启IIS站点,确保所有配置变更生效。

完成以上配置后,Strapi就能正确生成完整的微软授权跳转URL,不会出现域名被替换的问题。

内容的提问来源于stack exchange,提问作者Mario84

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 15:52:10