django,nginx加载不了静态文件

自己在linux下写了个django的demo,用python manage.py runserver运行时,
能够正确显示,当加上了nginx和gunicorn后,加载不了静态文件。

显示:NOT Found: /static/blog/css/bootstrap.min.css

nginx配置如下:

server {
    charset utf-8;
    listen 80;
    server_name example.com;
    
    location /static {
        alias /home/chris/sites/blog_demo/static;
    }
    
    location / {
        proxy_pass http://localhost:8080/;
    }
}

测试nginx配置文件:

sudo nginx -t   #test is successful

gunicorn 运行代码如下:

gunicorn -b localhost:8080 blogproject.wsgi:application
阅读 7.3k
2 个回答

location里的路径和实际路径的结尾是相匹配的,建议用root指令

    location /static/ {
        root /home/chris/sites/blog_demo/;
    }

以下配置应该也有效

    location /static/ {
        alias /home/chris/sites/blog_demo/static/;
    }

搞明白了.....80端口占用问题,
方法一:rm sites-enabled 的default
方法二:自定义的conf文件中的 监听端口改为xx 如: listen 8000

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题