Django 管理员登录 部署时"CSRF cookie 未设置",但在本地主机上工作



我向CORS_ALLOWED_ORIGINS和CSRF_TRUSTED_ORIGINS添加了几个域变体,并且ALLOWED_HOSTS。我将django.template.context_processors.csrf添加到context_processors中。我既没有将CSRF_COOKIE_SECURE也没有将SESSION_COOKIE_SECURE设置为true(我希望可以更改(。我想不出还能做什么让它在Django admin上工作,而且它在我设置了会话身份验证(包括配置csrf和会话cookie(后才停止工作。当我没有对前端进行任何身份验证时,Django登录运行良好,甚至在之后,就像我所说的,它在localhost上运行良好。

我真的很感激任何关于我可以尝试解决这个问题的其他建议。

更新:现在我收到这个错误消息Referer checking failed - https://myapp.herokuapp.com/admin/login/?next=/admin/ does not match any trusted origins.

我想可能是因为它是一个heroku子域,所以我添加了一个域和SSL证书。新域出现完全相同的错误。

我的CORS_ALLOWED_ORIGNS包括https://myapp.herokuapp.comhttps://www.example.com,由于斜线一直在从浏览器中复制,所以包括https://www.example.com/。即使有SSL证书,我也包含了每个地址的http://版本。

错误"引用人检查失败-。。。不匹配任何可信来源";与CCD_ 6无关。它是关于CSRF_TRUSTED_ORIGINS设置的。

确保包括https://myapp.herokuapp.com:

CSRF_TRUSTED_ORIGINS = ["https://myapp.herokuapp.com", "https://www.myapp.herokuapp.com"]

相关内容

  • 没有找到相关文章

最新更新