[英]Nothing happen after made changes on Flask app in server using uwsgi
[英]flask app not applying code changes to server with uwsgi and supervisor
我有一个使用uwsgi,nginx和超级用户运行的flask应用程序。 不管我尝试什么,我似乎都无法使代码更改在服务器上生效。
如果我在本地运行该应用程序,则更改在那里。 如果我停止并启动uwsgi,更改将生效。 如果我重新启动Supervisor服务,则更改不会生效。
我知道代码已更改,因为我登录并看到了所做的更改,但它仍在特定路径上运行旧代码。 如果我更改页面标题,这些更改会立即生效,但是对于我的webhook端点,它们似乎永远不会更改。
这是我的配置文件。
app.ini
[uwsgi]
module = wsgi
master = true
processes = 5
socket = app.sock
chmod-socket = 660
vacuum = true
die-on-term = true
supervisor
[program:app.io]
command=/home/www/beta/v_env/bin/uwsgi --ini /home/www/beta/app.ini --chown-socket www-data:www-data
directory=/home/www/beta
autostart=true
autorestart=true
stdout_logfile=/home/logs/app_uwsgi.log
redirect=true
stopsignal=QUIT
nginx
server {
listen 80;
server_name beta.domain.io;
location / {
include uwsgi_params;
uwsgi_pass unix:/home/www/beta/app.sock;
uwsgi_read_timeout 1800;
}
}
在测试时,我也从上游读取响应报头时,在上游过早关闭连接时收到很多此错误
如果您对代码所做的更改未反映在程序的行为中,则说明您的代码没有被重新加载,或者没有被更改,或者您误解了所做的更改。 对我而言,最常见的情况是.pyc文件无法刷新。 您可以尝试清除项目中的所有pyc文件,然后假设您有任何pyc文件,然后再次启动它。 这也将具有重新启动应用程序的好处。
在执行任何操作之前,我建议您使用主管重新启动您的应用程序。 如果您的应用程序在主管内,则可以使用以下相关方法:
supervisorctl stop all
supervisorctl start all
supervisorctl restart all
编辑:我忘了提一下,如果您正在浏览器中查看它,那么可以想象浏览器正在缓存旧版本。 如果是这种情况,则需要进行硬刷新。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.