Django为什么要使用我的服务器IP向我发送无效的HTTP_HOST标头?

Spi*_*del 3 django logging nginx

因此Django向我发送了以下信息:

[Django] ERROR: Invalid HTTP_HOST header: '<my server IP here>'.You may need to add u'<my server IP here>' to ALLOWED_HOSTS.

No stack trace available

Request repr() unavailable.
Run Code Online (Sandbox Code Playgroud)

问题是...您无法使用服务器IP访问我的网站,因为我只允许ALLOWED_HOST设置中的域。

所以我该怎么做?

编辑:我正在使用Nginx-> Gunicorn。有时仅会发生此错误,例如每周1-2次。

Spi*_*del 5

找到了原因。

有人尝试通过HTTPS上的IP通过IP访问服务器,例如https://(和server-ip)。

解决方案是禁用该选项。

Nginx解决方案:

server {
    listen      80;
    listen      443 ssl;
    ssl_certificate    /etc/ssl/example.crt;
    ssl_certificate_key    /etc/ssl/example.key;
    return      444;
}
Run Code Online (Sandbox Code Playgroud)