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

Facebook登录报错:URL域名未纳入应用域名,Strict Mode无法禁用

解决Facebook登录「域名未包含在应用域名中」的问题(Strict Mode强制启用后)

Facebook最近的更新已经强制开启了「Use Strict Mode for Redirect URIs」,再也没法通过禁用这个选项来绕开域名校验了,这也是导致你网站Facebook登录失效的核心原因。下面给你一套亲测有效的修复步骤:

1. 正确配置App Domains字段

进入Facebook开发者后台,找到你的应用 → 产品 → Facebook登录 → 设置:

  • 在App domains里添加你的网站主域名以及所有用到的子域名,比如yourdomain.com、m.yourdomain.com,注意不要加http://或https://前缀。

2. 精确设置Valid OAuth Redirect URIs

同样在Facebook登录设置页面:

  • 找到Valid OAuth Redirect URIs,这里要填写完整且精确的回调URL,每个URL单独一行。比如:
    • https://yourdomain.com/auth/facebook/callback
    • https://m.yourdomain.com/login/facebook/callback

    注意:这里不能用通配符(比如https://*.yourdomain.com/*),必须写具体的完整地址,否则Strict Mode会直接拦截请求。

3. 确认Site URL配置(网站应用必填)

回到应用的「基本设置」页面:

  • 检查Site URL是否填写了你的网站根地址,比如https://yourdomain.com,这个字段会辅助Facebook验证你的域名归属。

4. 本地开发环境的特殊处理

如果是在本地用localhost测试:

  • 把localhost添加到App domains里;
  • 把Valid OAuth Redirect URIs设为你的本地回调地址,比如http://localhost:8080/auth/facebook/callback(替换8080为你的本地服务端口),Facebook允许localhost作为开发域名使用。

常见避坑提醒

  • 别漏了子域名:所有涉及Facebook登录的域名/子域名,都必须加到App domains里;
  • 生产环境必须用HTTPS:Facebook现在对非HTTPS的生产域名校验非常严格,一定要部署HTTPS;
  • 配置后清缓存:修改完设置后,建议清一下浏览器缓存或者重启服务,确保配置生效。

如果按上面的步骤操作后还是有问题,可以试试在开发者后台重新生成应用的密钥,再测试登录流程。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 03:29:24