Django uWSGI Nginx
Posted
技术标签:
【中文标题】Django uWSGI Nginx【英文标题】: 【发布时间】:2014-05-31 15:37:07 【问题描述】:我正在学习本教程,但我遇到了一个问题,我收到了 502 nginx 错误。
tutorial link
我检查了错误日志,它说
uwsgi.log
ImportError: 没有名为 khcards.wsgi 的模块
我的 uwsgi 文件是这样的
[uwsgi]
# variables
projectdomain = khcardsonline.co.uk www.khcardsonline.co.uk
uid = www-data
god = www-data
chmod = 775
# config
plugins = python
master = true
pidfile=/tmp/project-master.pid
chdir = /var/www/example.com/src/khcards
protocol = uwsgi
env = DJANGO_SETTINGS_MODULE=khcards.settings
home = /var/www/example.com/env
pythonpath = /var/www/example.com/src/khcards
module = khcards.wsgi:application
socket = 127.0.0.1:8889
logto = /var/www/example.com/logs/uwsgi.log
#below line runs it as a daemon in background
daemonize = /var/log/uwsgi/khcards.log
我的 nginx.conf
服务器 听 80; server_name 域 www.domain.co.uk; 根 /var/www/example.com/src/khcards; access_log /var/www/example.com/logs/access.log; error_log /var/www/example.com/logs/error.log;
location /static/ # STATIC_URL
alias /var/www/example.com/src/static/static/; # STATIC_ROOT
expires 30d;
location /media/ # MEDIA_URL
alias /var/www/example.com/src/media/; # MEDIA_ROOT
expires 30d;
location /
include uwsgi_params;
uwsgi_pass 127.0.0.1:8889;
当我跑步时
sudo 服务 uwsgi 重启
终端吐出来
正在重启应用服务器 uwsgi [ OK ]i>
但是当我这样做时
sudo 服务 nginx 重启
终端吐出来
Restarting nginx: nginx.
这是否意味着 Nginx 配置不正确?
【问题讨论】:
【参考方案1】:尝试改变
chdir = /var/www/example.com/src/khcards
到
chdir = /var/www/example.com/src
【讨论】:
这是一个正确的答案。不知道为什么没有被标记为正确以上是关于Django uWSGI Nginx的主要内容,如果未能解决你的问题,请参考以下文章
Django + Uwsgi + Nginx 实现生产环境部署
Django + Uwsgi + Nginx 实现生产环境部署