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

apt-get

apt-get install uwsgi

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

sudo /etc/init.d/uwsgi start|stop|restart|reload
sudo 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 []
stop on runlevel [!]
respawn
exec /usr/local/bin/uwsgi --emperor /etc/uwsgi/vassals/ --logto /var/log/uwsgi/uwsgi.log

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

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

为你的网站创建配置文件

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

[uwsgi]
virtualenv=/home/cungen/sdk/python/env/
chdir=/var/www/api.cungen.tk
chmod-socket=
chown-socket=www-data module=www.wsgi
env=DJANGO_SETTINGS_MODULE=www.settings
master=True
vacuum=True
socket=/tmp/api.cungen.tk.sock
pidfile=/tmp/api.cungen.tk.pid
daemonize=/var/log/uwsgi/api.cungen.tk.log gid=www-data
uid=www-data

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

修改nginx中项目的配置文件

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

server {
listen ; 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 reload
sudo service uwsgi reload

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

如何正确的使用uwsgi的更多相关文章

  1. centos6.5配置uwsgi与nginx支持django

    一.centos中升级python 1. > wget https://www.python.org/ftp/python/3.5.4/Python-3.5.4.tgz # https://ww ...

  2. Ubuntu+Nginx+uWSGI+Flask应用

    Ubuntu 18.04,Nginx 1.14.0,uWSGI 2.0.17.1,Flask 1.0.2,Python 3.6.5, 多日未更新博客,就是在忙着把自己的Flask应用在Ubuntu上运 ...

  3. 关于ImportError: libssl.so.10: cannot open shared object file: No such file or directory unable to load app 0 (mountpoint='') (callable not found or import error)

    一.问题描述 在亚马逊云服务器使用Nginx+uwsgi部署django项目时,项目可以使用python manage.py runserver正常运行,uwsgi测试也没问题,Nginx也正常启动, ...

  4. 在腾讯云上安装mysql遇到的问题

    卸载mysql: 1.sudo apt-get autoremove --purge mysql-server-5.5 5.5 是数据库版本, mysql -v 显示版本信息 2.sudo apt-g ...

  5. ubuntu 16 安装django nginx uWSGI

    参考 https://www.digitalocean.com/community/tutorials/how-to-serve-django-applications-with-uwsgi-and- ...

  6. 使用 apache2 + `mod_proxy_uwsgi` + uwsgi + upstart 部署

    使用 apache2 + mod_proxy_uwsgi + uwsgi + upstart 部署 网上运行 python wsgi 的应用时,大部分的资料都是使用 nginx .uwsgi ,很少资 ...

  7. centos7 nginx配置httpsCenos(6.6/7.1)下从源码安装Python+Django+uwsgi+nginx环境部署(二)

     1.yum安装nginx 下载对应当前系统版本的nginx包(package) # wget  http://nginx.org/packages/centos/7/noarch/RPMS/ngin ...

  8. Nginx+UWSGI+Django配置全过程

    重度参阅 原理+实战http://zhou123.blog.51cto.com/4355617/1688434 原理http://www.cnblogs.com/fnng/p/5268633.html ...

  9. centos python nginx uwsgi

    先更新系统,并安装编译环境等等. yum update yum install python python-devel libxml2 libxml2-devel python-setuptools ...

随机推荐

  1. IntelliJ IDEA自用快捷键 转载

    最常用快捷键- 未分类 command Binding Description defeat - Ctrl+/ 代码提示 No - Ctrl+Alt+L 格式化代码   - Ctrl+B 快速打开光标 ...

  2. Qt 线程基础(Thread Basics的翻译,线程的五种使用情况)

    Qt 线程基础(QThread.QtConcurrent等) 转载自:http://blog.csdn.net/dbzhang800/article/details/6554104 昨晚看Qt的Man ...

  3. 使用ViewPager实现三个fragment切换

    新建一个android项目 先展示效果吧 首先看myfragmentPagerAdater这个类的代码 package com.example.viewpager; import java.util. ...

  4. thinkphp框架dump友好调试输出函数

    /** * 浏览器友好的变量输出 * @param mixed $var 变量 * @param boolean $echo 是否输出 默认为True 如果为false 则返回输出字符串 * @par ...

  5. VS2012的安装项目只能用InstallShield Limited Edition[附资源下载]

    以前版本的Visual Stuido中安装项目都可以使用微软自家的Visual Studio Installer,但是到了VS2012这一切都变了,只能用InstallShield Limited E ...

  6. UML类图详细介绍

    类图主要描述程序对象以及他们之间的关系.一般来说,类.接口.抽象类这些程序对象的区别很容易,但是他们之间六种关系以前总是理解不够深刻,这次进行了一次复习,顺便写成博文以便加深理解 类图中的三种对象 类 ...

  7. Memo打印

        加入Printers单元, ;   Left ;    y ;; do      begin        Printer.Canvas.TextOut(x,y,Memo1.Lines[i]) ...

  8. grep:Binary file (standard input) matches

    grep "key" xxx.log时输出 Binary file xxx.log matches 百度了一下:grep觉得这是二进制文件.解决方式:grep -a. grep - ...

  9. linux下的僵尸进程处理SIGCHLD信号

    什么是僵尸进程? 首先内核会释放终止进程(调用了exit系统调用)所使用的所有存储区,关闭所有打开的文件等,但内核为每一个终止子进程保存了一定量的信息.这些信息至少包括进程ID,进程的终止状态,以及该 ...

  10. PCAP研究

    一.  pcap简介 封装了OS提供的底层抓包技术,对外提供一些统一的抓包(及发送)接口.实现这些功能的其他技术包括:BPF(Berkeley Packet Filter),DLPI(Data Lin ...