首页 > 代码库 > 如何正确的使用uwsgi

如何正确的使用uwsgi

简单的安装过程可以在这里找到,这里主要说一下如何配置uwsgi的服务,将uwsgi服务加入系统进程,你可以使用如下两种方式安装

apt-get

apt-get install uwsgi

该命令会自动将uwsgi安装为一个服务,在 /etc/init.d/uwsgi 下,你可以使用以下命令来管理该服务:

sudo /etc/init.d/uwsgi start|stop|restart|reloadsudo service uwsgi start|stop|restart|reload

pip

pip install uwsgi

该命令会将uwsgi安装在 /usr/local/bin/uwsgi ,你需要手动添加服务,建立 /etc/ini/uwsgi.conf 文件,内容如下:

description "uWSGI Emperor"start on runlevel [2345]stop on runlevel [!2345]respawnexec /usr/local/bin/uwsgi --emperor /etc/uwsgi/vassals/ --logto /var/log/uwsgi/uwsgi.log

然后你就可以通过如下的命令来管理uwsgi的进程了:

sudo initctl start|stop|restart|reload| uwsgisudo service uwsgi start|stop|restart|reload

为你的网站创建配置文件

在 /etc/uwsgi/vassals/ 目录下创建一个ini的配置文件,内容如下:

[uwsgi]virtualenv=/home/cungen/sdk/python/env/chdir=/var/www/api.cungen.tkchmod-socket=777chown-socket=www-datamodule=www.wsgienv=DJANGO_SETTINGS_MODULE=www.settingsmaster=Truevacuum=Truesocket=/tmp/api.cungen.tk.sockpidfile=/tmp/api.cungen.tk.piddaemonize=/var/log/uwsgi/api.cungen.tk.loggid=www-datauid=www-data

virtualenv为你使用的virtualenv的路径,chdir为你的项目路径,module为你项目中的模块,%n改为你的项目名称即可

修改nginx中项目的配置文件

如我的为 /etc/nginx/sites-available/api.local.cg ,内容如下:

server {        listen 80;        root /var/www/api.cungen.tk;        index index.html index.htm;        access_log /var/log/nginx/api.cungen.tk-access;        error_log /var/log/nginx/api.cungen.tk-error error;        server_name api.cungen.tk;        location / {                try_files $uri @django;        }        location @django {                uwsgi_pass unix:///tmp/api.cungen.tk.sock;                include uwsgi_params;        }        ## caches        include /etc/nginx/conf.d/caches.conf;}

 重启服务:

sudo service nginx reloadsudo service uwsgi reload

 

摘自:http://stackoverflow.com/questions/23073829/uwsgi-wont-reload-restart-or-let-me-run-service

如何正确的使用uwsgi