有这么一刻,我在自己的服务器上设置了gunicorn + nginx + django,切域。在域中导航时,我收到 404 错误以及您可以访问的路径、/admin、/api 等。
我需要一些可以在切换到域时立即将我放入管理面板的东西。
在此之前,我对其进行了配置,以便我可以通过 --daemon 手动启动 gunicorn。
在这种情况下,我可以这样写:
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://127.0.0.1:8000/admin/;
}
location /admin/ {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://127.0.0.1:8000/admin/;
}
location /api/ {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://127.0.0.1:8000/api/;
}
但现在的设置是:
server {
listen 80;
server_name server_domain_or_IP;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/user/backend;
}
location /media/ {
root /home/user/backend;
}
location / {
include proxy_params;
proxy_pass http://unix:/run/gunicorn.sock;
}
}
我不能写同样的。
像这样解决了这个问题: