【发布时间】:2015-11-30 03:38:54
【问题描述】:
我在 192.168.1.81:3000 上运行 django+gunicorn+nginx。 Web 应用程序不会提供任何静态文件;它返回 404 错误。这表明 nginx 虚拟服务器配置文件存在问题。我尝试了几种针对堆栈溢出提供的解决方案,但均未成功。 nginx虚拟服务器文件有什么问题?
upstream app_server {
server unix:/home/pi/door_site/gunicorn.sock fail_timeout=0;
}
server {
listen 80;
server_name 192.168.1.81;
client_max_body_size 4G;
access_log /home/pi/door_site/logs/nginx-access.log;
error_log /home/pi/door_site/logs/nginx-error.log;
location /static/ {
alias /home/pi/door_site/static/;
}
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://app_server;
break;
}
}
}
【问题讨论】:
-
是的,我已经设置了 STATIC_ROOT 并运行
python manage.py collectstatic来填充 STATIC_ROOT 指向的目录 -
这是我遵循的教程。我再次浏览它,看看我是否遗漏了有关权限的任何内容,一切似乎都井然有序。难道是没有删除默认的nginx配置文件导致了这个问题?
-
您检查过您的 nginx 日志以查看
/static/url 实际尝试读取的路径吗? -
访问日志和错误日志都是空的