nginx+uwsgi+django配置

这几天有点时间开始学习了一下django。昨天是直接用自带的manage.py启动的。今天简单查了几下几种模式,后来选了uwsgi模式开跑django,主要是nginx自带了这个模块,比较方便。
1.nginx的配置
nginx的配置比较简单的,写个upstream然后写一下uwsgi_pass就OK。

server {  
...........  
location / {  
# First attempt to serve request as file, then  
# as directory, then fall back to displaying a 404.  
#       try_files $uri $uri/ /index.html;  
# Uncomment to enable naxsi on this location  
# include /etc/nginx/naxsi.rules  
include uwsgi_params;  
uwsgi_pass django;  
uwsgi_buffer_size 8k;  
uwsgi_intercept_errors on;  
}  
}  
upstream django {  
server 127.0.0.1:9000;  
keepalive 1;  
}
  • 配置uwsgi
#/etc/uwsgi/apps-available/django.ini  
[uwsgi]  
socket = 127.0.0.1:9000  
chdir = /home/pm/study/django/pystudy  
daemonize=/home/pm/study/django/pystudy/pystudy.log  
pidfile= /tmp/uwsgi.pid  
module=pystudy.wsgi:application  
master=True  
uid=pm  
gid=pm  
plugin = python  
processes = 2  
threads = 4  
stats = 127.0.0.1:9001

在apps-enabled建立链接到apps-available/django.ini 的软链接。
启动直接sudo /etc/init.d/uwsgi start即可
不过这个uwsgi的启动脚本貌似有问题,明明启动好了显示失败,而且uwsgi stop也没有把进程给停掉。