我有一个 Django 应用程序,已部署到 Heroku 上的生产环境中。我有一个设置包,其中包含本地和生产的不同设置。在我的本地设置中,我将 DEBUG
设置为 True,并且我能够运行服务器并加载主页。在我的生产设置模块中,除了 DEBUG
设置为 False 以及将主机名添加到 ALLOWED_HOSTS
之外,一切都是相同的。由于某种原因,当我尝试使用生产设置访问该网站(无论是在本地还是在 heroku 上)时,我收到了 400 Bad Request
。我认为我的主机名格式可能有问题,但我不确定:
ALLOWED_HOSTS = ['https://test_app.herokuapp.com/','http://127.0.0.1:8000/']
什么可能导致 400 错误?网址的格式是否应该不同?
最佳答案
扩展上面的评论:
由于 Heroku 对审核、暂存和生产应用程序使用不同的完全限定域名,因此我通常发现最好通过省略应用程序名称来使用通配符,但包括 .herokuapp.com
(注意句点)。
示例:ALLOWED_HOSTS = ['.herokuapp.com']
。
关于python - 在生产中访问 Django 域时出现 400 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49356565/