Centos uwsgi配置和使用

废话还是不多说,开整。

1、首先安装uwsgi,方法很简单

 pip3 install uWSGI

2、安装好之后,我们会在django中使用

配置uwsgi.ini

在Django中settings.py同级目录下配置uwgi.ini配置文件

[uwsgi]
# 配置服务器的监听ip和端口,让uWSGI作为nginx的支持服务器的话,设置socke就行;如果要让uWSGI作为单独的web-server,用http
socket = 127.0.0.1:3309

# 配置项目目录(此处设置为项目的根目录)
chdir = /root/www

# 配置入口模块 (django的入口函数的模块,即setting同级目录下的wsgi.py)
wsgi-file = www/wsgi.py

# 开启master, 将会多开一个管理进程, 管理其他服务进程
master = True

# 服务器开启的进程数量
processes = 4

# 以守护进程方式提供服, 输出信息将会打印到log中
daemonize = wsgi.log

# 服务器进程开启的线程数量
threads = 4
www
# 退出的时候清空环境变量
vacuum = true

# 进程pid
pidfile = uwsgi.pid

# 配uWSGI搜索静态文件目录(及django项目下我们存放static文件的目录,用uWSGI作为单独服务器时才需要设置,此时我们是用nginx处理静态文件)
# check-static = /home/python/Desktop/ttsx

保存后,使用命令启动。

uwsgi --ini uwsgi.ini

是否启动成功,查看一下进程:

ps aux | grep uwsgi

 启动成功。

如何设置,开机自启动服务

在/etc/systemd/system 目录下,创建server_uwsgi.service 文件

写入如下内容:

[Unit]
Description=uWSGI instance to serve myproject
After=network.target

[Service]
[Unit]
Description=uWSGI serve Django
After=network.target

[Service]
WorkingDirectory=/root/official 
ExecStart=/usr/local/bin/uwsgi --ini /root/official/www/uwsgi.ini
ExecStop=/usr/local/bin/uwsgi --stop /root/official/www/uwsgi.pid
ExecReload=/usr/local/bin/uwsgi --reload /root/official/www/uwsgi.pid
[Install]
WantedBy=multi-user.target

[Unit]
Description=uWSGI instance to serve myproject   随便起名
After=network.target

[Service]
[Unit]
Description=uWSGI serve Django 随便起名
After=network.target

[Service]
WorkingDirectory=/root/official  这里是你的Django根目录
ExecStart=/usr/local/bin/uwsgi --ini /root/official/www/uwsgi.ini  这是你的启动文件
ExecStop=/usr/local/bin/uwsgi --stop /root/official/www/uwsgi.pid 这是启动pid文件
ExecReload=/usr/local/bin/uwsgi --reload /root/official/www/uwsgi.pid 这是重启pid文件
[Install]
WantedBy=multi-user.target
 

下面在将server_uwsgi.service添加到服务中:


systemctl enable /etc/systemd/system/server_uwsgi.service

之后,我们可以使用命令启动

systemctl stop server_uwsgi.service 关闭uwsgi服务
systemctl start server_uwsgi.service 开启uwsgi服务
systemctl restart server_uwsgi.service 重启uwsgi服务

这里要注意的是,uwsgi.ini文件中,不能设置

daemonize = wsgi.log

需要设置成

log = wsgi.log

这样才可以开机自启动。

猜你喜欢

转载自blog.csdn.net/u012798683/article/details/105102300