脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|shell|

服务器之家 - 脚本之家 - Python - Django如何利用uwsgi和nginx修改代码自动重启

Django如何利用uwsgi和nginx修改代码自动重启

2023-05-11 14:11菲宇 Python

这篇文章主要介绍了Django如何利用uwsgi和nginx修改代码自动重启问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

利用uwsgi和nginx修改代码自动重启

在默认设置下,uwsgi本身不会立即加载修改后的文件。

nginx + uwsgi + django 部署的站点,如果修改了py代码,需要重新启动 uwsgi 才会生效。

如果有需要 Django 代码改动时立即生效,可以在启动 uwsgi 的 ini 的配置文件里加入参数py-autoreload = 1 ( 写在 ini 配置文件中,记得一定要 = 1,否则不生效)。

?
1
py-autoreload = 1

完整配置feiublog.ini

?
1
2
3
4
5
6
7
8
9
10
11
12
13
[uwsgi]
socket = 127.0.0.1:9090
stats = 127.0.0.1:9191
chdir = /var/project/feiublog
wsgi-file =/var/project/feiublog/wsgi.py
pidfile = /var/project/feiublog/uwsgi_blog.pid
touch-reload = /var/project/feiublog/uwsgi_blog.pid
buffer-size = 32768
processes = 1
workers= 2
threads = 2
daemonize = /tmp/log/uwsgi_blog.log
py-autoreload = 1  # 代码修改后自动重启

正确手动重载uwsgi和代码的方式

使用命令uwsgi feiublog.ini即可自动生成pidfile文件的uswgi_blog.pid

?
1
pidfile = /var/project/feiublog/uwsgi_blog.pid

然后在你的uwsgi.pid的目录下执行:

?
1
uwsgi --reload uwsgi_blog.pid

其中uwsgi_blog.pid即进程的pid文件。

至此,修改后的代码即可自动重载生效

Django修改文件后不生效 重启uwsgi解决

问题描述

这里主要是在线上环境,我们上传代码后,发现没有生效。

因为会生成.pyc文件。

解决办法

?
1
2
3
4
5
6
# 关闭所有 uwsgi进程,发现通过uwsgi --roload ****.pid 不一定有用
killall -9 uwsgi
# 启动 uwsgi
uwsgi --ini /home/wwwroot/laoji.org/uwsgi.ini 
# 重启一下nginx
service nginx reload

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://feiutech.blog.csdn.net/article/details/97884865

延伸 · 阅读

精彩推荐
  • PythonPython 局部变量global详解

    Python 局部变量global详解

    这篇文章主要介绍了Python 局部变量global详解,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下...

    lanxiaofang39352022-08-14
  • PythonPython从文件中读取数据的方法讲解

    Python从文件中读取数据的方法讲解

    今天小编就为大家分享一篇关于Python从文件中读取数据的方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随...

    zsx07285142021-05-28
  • PythonPython函数属性和PyC详解

    Python函数属性和PyC详解

    这篇文章主要介绍了Python函数属性和PyC,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下...

    骏马金龙9862022-02-11
  • Python利用python绘制笛卡尔直角坐标系

    利用python绘制笛卡尔直角坐标系

    这篇文章主要介绍了利用python绘制笛卡尔直角坐标系,python绘图主要用到matplotlib绘图模块,利用matplotlib模块画出上面的正弦函,需要的朋友可以参考一下...

    帅帅de三叔4412022-10-25
  • PythonPython基础之教你怎么在M1系统上使用pandas

    Python基础之教你怎么在M1系统上使用pandas

    这篇文章主要介绍了Python基础之教你怎么在M1系统上使用pandas,文中有非常详细的代码示例,对正在学习python基础的小伙伴们有很好地帮助,需要的朋友可以参...

    choas-god7822021-10-26
  • Pythonpython爬虫之selenium库的安装及使用教程

    python爬虫之selenium库的安装及使用教程

    今天带大家来学习怎么安装使用selenium库,文中有非常详细的图文介绍,对正在学习python爬虫的小伙伴们很有帮助,需要的朋友可以参考下...

    念惟忆11322021-11-11
  • Python详解python中字典的循环遍历的两种方式

    详解python中字典的循环遍历的两种方式

    本篇文章主要介绍了python中字典的循环遍历的两种方式 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    paranoia14112020-09-20
  • Pythonpython3 tkinter实现点击一个按钮跳出另一个窗口的方法

    python3 tkinter实现点击一个按钮跳出另一个窗口的方法

    今天小编就为大家分享一篇python3 tkinter实现点击一个按钮跳出另一个窗口的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    北京_Bob7142021-07-12