分布式环境下Django如何通过nginx访问静态文件

2024-09-29 01:19:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两台机器,一台是nginx(ip:192.168.239.139),另一台是django(ip:192.168.239.140),逻辑代码实际上在那里是的。他们通过wsgi进行通信,当请求进来时,nginx将请求转发给django,这很好,但是静态文件如images/js/css无法加载,我已经尝试过修改django设置.py一次又一次,但是没有帮助,我读了很多关于这个问题的文章都是没用的,因为他们的服务器名都是“localhost”在nginx.conf公司这意味着它们的静态文件在nginx服务器的同一台机器上,但我的是分开。另外,不管是nginx,我只运行了python manage.py runserver,静态文件加载正确,下面是我的代码:

nginx.conf公司:

http {
    include       mime.types;
    default_type  application/octet-stream;
    upstream realservers{
                server 192.168.239.140:8080;
                #server 192.168.239.138:8000;
    }
    server {
        listen       80;
        server_name  localhost;
        location / {
                include uwsgi_params;
                uwsgi_pass realservers;
        }
    }
}

django公司设置.py:

^{pr2}$

我的静态目录在我项目的根目录下,位置与管理.py在

有人能帮我解决这个问题吗?我会很感激的!在


Tags: 文件django代码pyip服务器机器localhost