首页 > 解决方案 > 为什么我的 django 项目没有在 ngnix 上运行?

问题描述

我正在尝试在子域上运行我的 django 项目,我的 nginx 配置是,

server {
listen 80;
server_name subdomain.example.me www.subdomain.example.me;

location /static/ {
        root /home/gagan/webmash/blog;
}


location /media/ {
        root /home/gagan/webmash/blog;
}


location / {
        include proxy_params;
        proxy_pass  http://my_ip:9000;
}

虽然我的主管配置是,

[program:webmash]
command=/home/gagan/webmash/env/bin/gunicorn --workers 3 --bind unix:/home/gagan/webmash /blog/blog.sock blog.wsgi --env DJANGO_SETTINGS_MODULE=blog.settings.production
 directory=/home/gagan/webmash/blog
 autostart=true
 autorestart=true
 stderr_logfile=/var/log/saporawebapp.err.log
 stdout_logfile=/var/log/saporawebapp.out.log

当我运行主管时,

sudo supervisorctl restart webmash

它没有显示任何错误。在重新启动 nginx 时,它也没有显示任何错误。但是我的项目没有在https://subdomain.example.com或 my_ip:9000 上运行。这种行为的可能原因是什么

标签: djangonginxdeployment

解决方案


我推荐 Nginx 与 systemd over supervisor。这是一个让 Django 与 Nginx + Gunicorn + Systemd + AnaConda 一起运行的教程。

也许我的 github 会帮助你:

GitHub/Nginx


推荐阅读