Django使用uwsgi部署时的配置以及django日志文件的处理方法


Posted in Python onAugust 30, 2019

首先保证你有一个可运行的django工程

然后在虚拟环境里面安装好uwsgi

pip install uwsgi

配置nginx的服务如下

server {                                   
 listen 80 default_server;
 listen [::]:80 default_server;
 root /var/www/html;
 server_name _;
 location / {
  try_files $uri $uri/ =404;
 }
 location /account {
  include uwsgi_params; #表示使用uwsgi代理
  uwsgi_pass 127.0.0.1:8000; #这里配置的必须和uwsgi里的一致
 }
}

这里需要注意的是,nginx中的 location /account 要和你在django中的地址一致,即django 和nginx是可以找到的路由

先在脚本中测试使用简单命令启动服务

uwsgi --socket 127.0.0.1:8000 --wsgi-file yourproject/wsgi.py

注意:这里的yourproject 用你自己的目录替换

如果能走到这儿,可以正常运行,那么就是成功的,否则自己查看控制台中输出的错误信息,然后对应的去修改。

最后是写入到配置文件的运行方式,新建一个test.ini 文件

[uwsgi]
#监听的地址 必须和nginx中的一致
socket = 127.0.0.1:8000
#wsgi文件,在你的项目配置目录下可以找到 注意:最后输入绝对地址
wsgi-file = /home/aeasringnar/my_Project/jwt-test/my_jwt_test/wsgi.py
# 你的项目的根目录 绝对地址
chdir = /home/aeasringnar/my_Project/jwt-test
# 你项目使用的虚拟环境的根目录 绝对地址
home = /home/aeasringnar/.envs/jwt-test
#你的日志目录,注意的是,你的django控制台输出的日志都会在这里输出,uwsgi的相关日志也在这里
daemonize = /home/aeasringnar/my_Project/jwt-test/test.log
####下面的配置可以有 也可以没有,看个人需求,不建议配置
# 主进程
master = true 
# 多站模式  
vhost = true 
# 多站模式时不设置入口模块和文件   
no-site = true 
# 子进程数  
workers = 2   
# 退出、重启时清理文件 
vacuum = true

然后启动

uwsgi --ini test.ini

uwsgi test.ini

启动后会输出

[uWSGI] getting INI configuration from test.ini

这时候再去访问查看是否启动成功

如果服务挂了,去日志文件查看

这里需要查看端口使用情况

附:相关命令Linux环境下

查看已经连接的服务端口(ESTABLISHED)

netstat -a

查看所有的服务端口(LISTEN,ESTABLISHED)

netstat -ap

查看指定端口,可以结合grep命令:

netstat -ap | grep 8000

也可以使用lsof命令:

lsof -i:8000 #可以查看对应的PID

若要关闭使用这个端口的程序,使用kill + 对应的pid

kill -9 PID号

本例小窍门:关闭所有uwsgi进程命令

killall -9 uwsgi

以上这篇Django使用uwsgi部署时的配置以及django日志文件的处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python CSV模块使用实例
Apr 09 Python
尝试使用Python多线程抓取代理服务器IP地址的示例
Nov 09 Python
python使用fcntl模块实现程序加锁功能示例
Jun 23 Python
LRUCache的实现原理及利用python实现的方法
Nov 21 Python
Python OS模块实例详解
Apr 15 Python
Python 脚本拉取 Docker 镜像问题
Nov 10 Python
Python3爬虫mitmproxy的安装步骤
Jul 29 Python
OpenCV读取与写入图片的实现
Oct 13 Python
python基于Kivy写一个图形桌面时钟程序
Jan 28 Python
Django debug为True时,css加载失败的解决方案
Apr 24 Python
Python 数据科学 Matplotlib图库详解
Jul 07 Python
利用Python读取微信朋友圈的多种方法总结
Aug 23 Python
Python matplotlib生成图片背景透明的示例代码
Aug 30 #Python
Python 批量刷博客园访问量脚本过程解析
Aug 30 #Python
快速解决docker-py api版本不兼容的问题
Aug 30 #Python
Python 使用 Pillow 模块给图片添加文字水印的方法
Aug 30 #Python
python pillow模块使用方法详解
Aug 30 #Python
docker-py 用Python调用Docker接口的方法
Aug 30 #Python
tesserocr与pytesseract模块的使用方法解析
Aug 30 #Python
You might like
ecshop 订单确认中显示省市地址信息的方法
2010/03/15 PHP
PHP对象转换为数组函数(递归方法)
2012/02/04 PHP
php有道翻译api调用方法实例
2014/12/22 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
2016/10/17 PHP
php使用str_replace替换多维数组的实现方法分析
2017/06/15 PHP
PHP实现多图上传和单图上传功能
2018/05/17 PHP
JSQL  一个 web DB 的封装
2010/05/05 Javascript
dotopAlert 提示用户需安装播放器的代码
2012/09/17 Javascript
浅谈JavaScript超时调用和间歇调用
2015/08/30 Javascript
JS组件系列之Bootstrap Icon图标选择组件
2016/01/28 Javascript
JS中的eval 为什么加括号
2016/04/13 Javascript
Node.js Streams文件读写操作详解
2016/07/04 Javascript
canvas实现手机端用来上传用户头像的代码
2016/10/20 Javascript
JavaScript中英文字符长度统计方法示例【按照中文占2个字符】
2017/01/17 Javascript
Vue.js数据绑定之data属性
2017/07/07 Javascript
jQuery实现打开网页自动弹出遮罩层或点击弹出遮罩层功能示例
2017/10/19 jQuery
jQuery获取所有父级元素及同级元素及子元素的方法(推荐)
2018/01/21 jQuery
解决vue多个路由共用一个页面的问题
2018/03/12 Javascript
vue实现组件之间传值功能示例
2018/07/13 Javascript
js实现鼠标拖拽缩放div实例代码
2019/03/25 Javascript
React学习之受控组件与数据共享实例分析
2020/01/06 Javascript
Vuex的热更替如何实现
2020/06/05 Javascript
原生JavaScript实现幻灯片效果
2021/02/19 Javascript
[52:06]完美世界DOTA2联赛决赛日 Inki vs LBZS 第一场 11.08
2020/11/10 DOTA
python实现文件快照加密保护的方法
2015/06/30 Python
Python中MySQL数据迁移到MongoDB脚本的方法
2016/04/28 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
2018/01/10 Python
Python反射的用法实例分析
2018/02/11 Python
浅谈Scrapy网络爬虫框架的工作原理和数据采集
2019/02/07 Python
Python 线性回归分析以及评价指标详解
2020/04/02 Python
印度尼西亚最好的小工具在线商店:Erafone.com
2019/03/26 全球购物
职工运动会感言
2014/02/07 职场文书
观看信仰心得体会
2014/09/04 职场文书
公司委托书范本5篇
2014/09/20 职场文书
校园运动会广播稿
2014/10/06 职场文书
2016感恩母亲节校园广播稿
2015/12/17 职场文书