1、問題####
在生產服務器中關閉調試模式,將setting.py文件中的DEBUTG設置為False;并將ALLOW_HOST=[]中填入自己的域名。但在重啟服務器的時候,訪問首頁瀏覽器出現400的錯誤代碼。
setting.py
[...]
DEBUG = False
ALLOW_HOST = ['mysite.com']
[...]
2、解決方法####
如果DEBUG設置為True時,服務器不會檢查request header中的HTTP_HOST;當DEBUG設置為False時,就會檢查。經過搜索發現Nginx做反向代理,但是沒有設置轉發后的request的host。
在Nginx的配置文件(Nginx提供默認的default配置文件,但是我這里說的是我們自己新建的配置文件)
加入下面
server{
listen 80;
server_name yourDomainName;
location / {
proxy_set_header Host &host;
proxy_pass http://localhost:8000;
}
}
prosy_set_header Host $host
這樣就解決了問題!