我的项目中有一个wsgi.ini
文件,我使用uwsgi wsgi.ini
来运行我的项目。但是当我更改django代码时,我想重新启动项目而不是杀死uwsgi然后重新加载它。 uwsgi官方文档提供了以下方法:
# using kill to send the signal
kill -HUP `cat /tmp/project-master.pid`
# or the convenience option --reload
uwsgi --reload /tmp/project-master.pid
# or if uwsgi was started with touch-reload=/tmp/somefile
touch /tmp/somefile
但是我的系统(centOS)中的project-master.pid
目录中没有/tmp
个文件。
.pid
文件以及该文件中应包含哪些内容? 答案 0 :(得分:1)
我找到了anwser。在project-master.pid
文件中设置了wsgi.ini
,您应该先设置pidfile=/tmp/project-master.pid
。然后使用uwsgi启动服务器:uwsgi wsgi.ini
。启动后,您可以在project-master.pid
目录中看到/tmp
文件。如果要重新加载uwsgi服务器,可以使用此命令重新启动服务器:uwsgi --reload /tmp/project-master.pid
。
答案 1 :(得分:0)
您无需使用uWSGI服务器来满足本地开发需求。 Apache / uWSGI用于生产,并且通常不希望在每次代码更改时隐式重新启动它们。事实上,生产服务器即使在代码更改后也没有重新启动,它通常会充当安全网,因此您最终不会在未完成部署的情况下重新启动服务器。
只需使用inbuild服务器django自己提供。
python manage.py runserver 8000
答案 2 :(得分:0)
我认为答案很简单,您可以杀死uwsgi进程,然后再次生成它:
{{1}}
然后再次运行uwsgi命令。