Nginx为django静态文件提供403代码

时间:2015-04-16 07:30:03

标签: django nginx

我正在尝试部署我的django项目。在我的django设置中,静态文件设置如下:

STATIC_URL = '/static/'
STATIC_ROOT = '/root/www/static'

所以我的静态文件在/ root / www / static目录下,我可以在服务器中看到它们。我的nginx服务器块是这样的:

server{
   listen 80;
   location /static/ {
   root /root/www;
   }

   location / {
   proxy_pass http://127.0.0.1:8000;
   proxy_set_header Host $host;
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   }
}

当我使用浏览器浏览我的应用程序时,我正在

  

403 - 禁止

静态文件的

错误。

2 个答案:

答案 0 :(得分:1)

您不应将静态文件放在/root下:仅供root用户访问的文件。

答案 1 :(得分:0)

问题似乎与用户权限有关。您需要更改部署应用程序的用户可以访问的路径。

该位置应如下所示:

location /static {
        alias /home/ubuntu/srv/webapps/[app_name]/static;
    }

尝试使用this教程获取更多帮助。