静态文件未显示在通过nginx服务的实时Django网站上

时间:2019-06-01 00:11:02

标签: python django nginx server

我正在遵循digitalocean教程,使用django,gunicorn和nginx在服务器上构建站点。该站点处于活动状态,但不显示静态文件。

语法干净 我得出的结论是问题可能出在django或nginx上(因为任何静态文件的配置都与它们之一有关

我试图修改django和nginx的配置,因为它们看起来像是源代码。

1)django settings.py文件django_project / django_project / settings.py中的静态位置定义

STATIC_URL = '/static/',
STATIC_ROOT = "/dir1/dir2/dir3/django_project/static"

2)位于/etc/nginx/nginx.conf的nginx配置文件

http {

    server {
           listen       800  default_server;
           server_name  mysite.com;
           return       444;
           location /static/ {
                  alias /dir1/dir2/dir3/django_project/static;
                            }
           }

3)/ etc / nginx / sites-availables中的默认文件:

server {
    listen 80;
    server_name mysite.com;

    location = /favicon.ico { access_log off; log_not_found off; }
    location /static/ {
    root  /dir1/dir2/dir3/django_project/static;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/gunicorn.sock;
    }
}

我希望静态文件显示出来

============================= 编辑:

当我尝试打开静态文件时收到的错误消息是:

  

未找到

     

在此服务器上找不到请求的资源。

1 个答案:

答案 0 :(得分:0)

该站点现在可以正常工作。

问题很多,但都与nginx或gunicorn设置有关。

始终检查nginx和gunicorn错误:

对Nginx和Gunicorn进行故障排除的详细讨论如下:

https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-ubuntu-16-04