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实现探测socket和web服务示例
Mar 28 Python
Python中多个数组行合并及列合并的方法总结
Apr 12 Python
Python实现抓取HTML网页并以PDF文件形式保存的方法
May 08 Python
python 爬虫 批量获取代理ip的实例代码
May 22 Python
python 利用for循环 保存多个图像或者文件的实例
Nov 09 Python
python实现雪花飘落效果实例讲解
Jun 18 Python
使用Keras加载含有自定义层或函数的模型操作
Jun 10 Python
python求解汉诺塔游戏
Jul 09 Python
如何使用Django Admin管理后台导入CSV
Nov 06 Python
matplotlib bar()实现百分比堆积柱状图
Feb 24 Python
python实现的人脸识别打卡系统
May 08 Python
聊聊Python中关于a=[[]]*3的反思
Jun 02 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
Classes and Objects in PHP5-面向对象编程 [1]
2006/10/09 PHP
PHP查询MySQL大量数据的时候内存占用分析
2011/07/22 PHP
作为程序员必知的16个最佳PHP库
2015/12/09 PHP
微信 getAccessToken方法详解及实例
2016/11/23 PHP
基于javascript滚动图片具体实现
2013/11/18 Javascript
jquery实现动态菜单的实例代码
2013/11/28 Javascript
javascript实现checkBox的全选,反选与赋值
2015/03/12 Javascript
jQuery实现文本展开收缩特效
2015/06/03 Javascript
浅谈JavaScript中的对象及Promise对象的实现
2015/11/15 Javascript
js数字计算 误差问题的快速解决方法
2017/02/28 Javascript
关于Ajax的原理以及代码封装详解
2017/09/08 Javascript
详解VueRouter进阶之导航钩子和路由元信息
2017/09/13 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
使用vue开发移动端管理后台的注意事项
2019/03/07 Javascript
element表格翻页第2页从1开始编号(后端从0开始分页)
2019/12/10 Javascript
[10:05]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD 选手采访
2021/03/11 DOTA
Python编码时应该注意的几个情况
2013/03/04 Python
Python实现生成简单的Makefile文件代码示例
2015/03/10 Python
详解python之多进程和进程池(Processing库)
2017/06/09 Python
numpy找出array中的最大值,最小值实例
2018/04/03 Python
python3+selenium自动化测试框架详解
2019/03/17 Python
python队列Queue的详解
2019/05/10 Python
python语言元素知识点详解
2019/05/15 Python
python中的socket实现ftp客户端和服务器收发文件及md5加密文件
2020/04/01 Python
python 的topk算法实例
2020/04/02 Python
Django中FilePathField字段的用法
2020/05/21 Python
python利用后缀表达式实现计算器功能
2021/02/22 Python
canvas烟花特效锦集
2018/01/17 HTML / CSS
保护环境倡议书100字
2014/05/19 职场文书
婚庆答谢词
2015/01/04 职场文书
狮子林导游词
2015/02/03 职场文书
员工工作表现自我评价
2015/03/06 职场文书
职工的安全责任书范文!
2019/07/02 职场文书
文书工作总结(范文)
2019/07/11 职场文书
使用CSS3实现按钮悬停闪烁动态特效代码
2021/08/30 HTML / CSS
MySQL中几种插入和批量语句实例详解
2021/09/14 MySQL