Django DisallowedHost错误

hen*_*gen 5 python apache django

我正在用apache运行django,并且在我的apache error.log中收到以下错误:

django.core.exceptions.DisallowedHost: Invalid HTTP_HOST header: 'example.com'. You may need to add 'example.com' to ALLOWED_HOSTS., referer: http://example.com/
Run Code Online (Sandbox Code Playgroud)

在我的settings.py中,我有:

ALLOWED_HOSTS = ['*']
Run Code Online (Sandbox Code Playgroud)

这应该允许任何主机吗?

编辑:经过更多调查后,我发现无论我将ALLOWED_HOSTS设置为什么,它始终会导致上述错误。使用服务器的本地IP地址时,可以正常访问网站。唯一不起作用的是远程URL。

hen*_*gen 2

我终于找到了解决问题的方法。

将 django 与 apache 连接的 wsgi.py 覆盖了我的 settings.py 中的 ALLOWED_HOSTS 设置。

wsgi 有它自己的 ALLOWED_HOSTS,可以独立于 django 设置进行设置。检查所有可能的配置文件对于发现此错误至关重要。

  • 您能解释一下需要做什么吗?我不明白。我检查了我的 wsgi.py 它加载了相同的 django 设置。像 `os.environ.setdefault("DJANGO_SETTINGS_MODULE", "wisanadjango.settings")` (4认同)