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

如何在localhost环境测试基于django-allauth的Facebook登录

在localhost环境测试Django + django-allauth的Facebook登录(HTTPS要求)

当然有办法解决这个问题!我之前开发Django项目时也碰到过一模一样的情况,给你几个靠谱的亲测有效方案:

方案一:用ngrok快速生成HTTPS公网代理(最简单快捷)

这是我日常开发最常用的方式,不用折腾本地证书,几分钟就能搞定:

  • 下载ngrok(对应系统版本直接官网获取),解压后打开终端运行命令:ngrok http 8000
  • 运行后会得到一个类似 https://xxxxxx.ngrok.io 的HTTPS地址,它会把公网请求转发到本地的http://localhost:8000
  • 打开Facebook开发者后台,找到你的应用,进入「产品」→「Facebook登录」→「设置」,把ngrok地址加上django-allauth的回调路径(比如 https://xxxxxx.ngrok.io/accounts/facebook/login/callback/),加到「有效的OAuth跳转URI」列表里
  • 正常启动Django的runserver:python manage.py runserver,然后用ngrok的HTTPS地址访问网站,就能正常测试Facebook登录了

方案二:用Django runserver_plus开启本地HTTPS

如果不想用公网代理,想直接在本地用HTTPS,可以借助django-extensions的runserver_plus功能:

  • 先安装依赖包:pip install django-extensions werkzeug
  • 生成自签名证书(用openssl命令):openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes,按提示填信息就行,随便填也不影响使用
  • 在Django的settings.py里把django_extensions加到INSTALLED_APPS中
  • 启动HTTPS版的runserver:python manage.py runserver_plus --cert cert.pem --key key.pem
  • 打开Facebook开发者后台,把https://localhost:8000/accounts/facebook/login/callback/加到「有效的OAuth跳转URI」里
  • 访问https://localhost:8000时,浏览器会提示证书不可信(自签名证书的正常现象),直接忽略警告继续访问,就能测试Facebook登录了

方案三:用mkcert生成可信本地证书(长期测试首选)

如果需要长期在本地测试,不想每次都忽略浏览器的证书警告,可以用mkcert生成本地信任的证书:

  • 安装mkcert(不同系统安装方式不同:Mac用brew,Windows用choco,Linux直接下载二进制包),然后运行mkcert -install安装本地根证书
  • 生成针对localhost的证书:mkcert localhost 127.0.0.1,会生成localhost+1.pem和localhost+1-key.pem两个文件
  • 用runserver_plus启动Django:python manage.py runserver_plus --cert localhost+1.pem --key localhost+1-key.pem
  • 同样在Facebook开发者后台添加https://localhost:8000/accounts/facebook/login/callback/到跳转URI里
  • 这次访问https://localhost:8000浏览器就不会提示证书错误了,体验和真实HTTPS环境一致

额外注意事项

  • 确保Facebook开发者后台的「Facebook登录」设置里,「强制HTTPS」选项是开启的(默认已开启)
  • 跳转URI必须和django-allauth的回调路径完全一致,默认路径是/accounts/facebook/login/callback/,如果修改过settings里的配置要对应调整
  • 用ngrok的话,每次重启ngrok都会生成新的域名,记得去Facebook后台更新跳转URI

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 04:13:31