配置uWSGI启动Django
1.在虚拟环境下安装uUWSGI
(env_dj) [root@chen1995 MyWebWord]# pip3 install uwsgi
2.在项目的同级目录新建一个script目录,然后新建一个uwsgi.ini文件
(env_dj) [root@chen1995 MyWebWord]# mkdir script # 新建目录
(env_dj) [root@chen1995 MyWebWord]# cd script # 进入目录
(env_dj) [root@chen1995 script]# vim uwsgi.ini # 新建uwsgi.ini# 也可以在其他目录下新建uwsgi.ini文件,我这里直接在项目目录下创建,如下:
(env_dj) [root@chen1995 MyWebWord]# vim uwsgi.ini
3.配置uwsgi.ini文件
当配置socket或http,服务器地址时,这里有个坑需要注意–如果我们使用的是云服务器,这里要写私有IP----不要写公网IP
[uwsgi]
#套接字方式--使用nginx连接时使用,后面是Django程序所在服务器地址
# socket=192.168.0.214:8000#http通信方式--直接做web服务器使用,后面是Django程序所在服务器地址
http=192.168.0.214:8000#配置当前工作的项目目录
chdir=/home/myproject/MyWebWord#项目中wsgi.py文件的目录,相对于项目目录
wsgi-file=MyWebWord/wsgi.py# 进程数
processes=4# 线程数
threads=2# 开启主进程模式--uwsgi服务器的角色 uwsgi做主进程,关闭该进程其他相关进程也会被杀掉
master=True# 存放进程编号的文件
pidfile=uwsgi.pid# 后台运行,并输出日志,后面是日志文件位置,后台运行时看不见终端所以只能查看日志
daemonize=uwsgi.log
一般使用以上配置基本可以满足需求–但是uwsgi还有很多其他配置项如下:
# 并发的socket 连接数。默认为100。优化需要根据系统配置--未测试
listen = 4# 如果想加载静态文件,则配置静态文件所在目录--未测试
static-map=/static=/home/myproject/MyWebWord/static# 指定依赖的虚拟环境--未测试
virtualenv=/home/python/.virtualenvs/django_2.2_env# 指定python环境路径 二选一 --未测试
pythonpath=/home/python/.virtualenvs/django_2.2_env/lib/python/site-packages
# pythonpath=/home/python/.virtualenvs/django_2.2_env/bin#monitor uwsgi status 通过该端口可以监控 uwsgi 的负载情况--未测试
stats = 0.0.0.0:9192# 启动uwsgi的用户名和用户组
uid=root
gid=root# 设置自中断时间
harakiri=30
# 设置缓冲
post-buffering=4096# 设置自中断时间
harakiri=30# 设置缓冲
post-buffering=4096
4.使用uwsgi启动web服务
启动时进入虚拟环境–进入项目目录–输入以下命令
uwsgi --ini uwsgi.ini
5.关闭uswsgi
关闭时进入虚拟环境–进入项目目录–输入以下命令
uwsgi --stop uwsgi.pid或者使用pkill杀掉所有uwsgi进程:
pkill -f -9 uwsgi
6.Django的settings.py文件配置
# 配置为生产环境时关闭debug功能
DEBUG = False # 配置ALLOWED_HOSTS
ALLOWED_HOSTS = ['公网IP', 'localhost', '0.0.0.0:8000', '127.0.0.1']
7.使用脚本启动uWSGI
使用脚本前,需要先进入项目的虚拟环境后在执行脚本
启动uWSGI
import os
print('开始执行启动uWSGI')print('执行命令: cd /home/myproject/MyWebWord')
os.popen(r"/home/myproject/MyWebWord")start = os.popen('uwsgi --ini uwsgi.ini').read()
print('执行命令: uwsgi --ini uwsgi.ini')
print(start)print('脚本执行完毕')
停止uWSG
import os
print('开始执行停止uWSGI')print('执行命令: cd /home/myproject/MyWebWord')
os.chdir(r"/home/myproject/MyWebWord")print('执行命令: uwsgi --stop uwsgi.pid')
stop = os.popen('uwsgi --stop uwsgi.pid').read()
print(stop)print('脚本执行完毕')
配置uWSGI启动Django相关推荐
- 使用Nginx+uWSGI部署Django项目
1.linux安装python3环境 参考链接:https://www.cnblogs.com/zzqit/p/10087680.html 2.安装uwsgi pip3 install uwsgiln ...
- 使用uWSGI部署django项目
先说说什么是uWSGI吧,他是实现了WSGI协议.uwsgi.http等协议的一个web服务器,那什么是WSGI呢? WSGI是一种Web服务器网关接口.它是一个Web服务器(如nginx)与应用服务 ...
- Nginx + uWSGI + Python + Django构建必应高清壁纸站
写在前面 做这个网站的初衷是因为,每次打开必应搜索搜东西的时候都会被上面的背景图片吸引,我想必应的壁纸应该是经过专业人员精选出来的,我甚至会翻看以前的历史图片,唯一美中不足的是必应的首页只能查看最多7 ...
- Nginx + uWSGI + Python + Django搭建一款只属于自己的壁纸网站
写在前面 做这个网站的初衷是因为,每次打开必应搜索搜东西的时候都会被上面的背景图片吸引,我想必应的壁纸应该是经过专业人员精选出来的,我甚至会翻看以前的历史图片,唯一美中不足的是必应的首页只能查看最多7 ...
- CENTOS7 使用 Nginx + Uwsgi 部署 Django 项目
写在前面的话 最近总是见到有新学 Django 的朋友在部署自己的项目到 Linux 上面的时候运行不起来,所以就动手写了这篇博客. 对于不会搭建 Python 3 环境的朋友可以参考前面的博客[CE ...
- Pycharm社区版运行Django的三种方法(Pycharm添加配置参数快捷启动Django、Pycharm社区版Django项目创建)
目录 Pycharm社区版运行Django的三种方法 Django安装和环境变量的配置(MacOS) 创建Project 启动Django Webserver 方法一:终端启动 方法二:pycharm ...
- 百度云服务器BCC安装ubuntu16.04 +python3.6配置uWSGI和Nginx 部署Django项目
题外话 最近也不开学不开工,闲着没事在做一个python+Django的项目.正好域名之前刚审核通过.开始着手在百度云部署自己的项目,记录一下过程中踩过的坑. 简介 Django是一个功能强大的Web ...
- Django配置uwsgi时log文件报错thunder lock: disabled (you can enable it with --thunder-lock)
一.问题来源 使用uwsgi --ini mysite.ini命令启动后使用ps -aux | grep uwsgi命令查询uwsgi的相关进程,但是查询不到,发现只有下面一个进程,说明uwsgi启动 ...
- 基于Centos搭建nginx+uwsgi运行django环境
环境: CentOS 7 nginx/1.9.12 Python 2.7.5 一:安装依赖包5 yum install zlib-devel bzip2-devel pcre-devel openss ...
最新文章
- 排序算法总结之归并排序
- windows 远程访问别人的linux下的ftp服务器,linux与windows之间使用ftp相互访问(CentOS提示ftp:command not found)...
- 自动升级失败,缺少System.resources.dll?
- KindEditor上传的图片显示在jsp页面上时调整布局
- 1.搭建Spring环境
- 使用Nginx实现反向代理 - 不同的子域名映射到不同的后台地址
- (30)FPGA原语设计(单端时钟转差分时钟)
- 罗永浩:我是小野科技合伙人 与FLOW电子烟没有关系
- 吴恩达机器学习学习笔记第七章:逻辑回归
- 在head标签内css代码,怎么在head区域引入css
- EXPLAIN mysql性能调优
- SQL编程和高级查询
- 龙芯电脑编译安装mysql5.7详解
- macbook pro 重置SMC
- 飞猪大数据:85后带来春节旅行新气氛
- 用python制作weblogo/SeqLogo/序列保守性分析图
- 无法启动此程序因为计算机丢失msvcr110.dll,Win7运行程序提示计算机中丢失msvcr110.dll如何解决...
- Linux驱动编程 step-by-step
- 【稳定性day3】蘑菇街的运维体系 - 如何撑住双十一
- 小 H 的数字c++