Nginx,uWSGI,Flask应用程序在重新启动服务器之前不会显示更改

时间:2016-11-18 16:32:59

标签: python nginx flask uwsgi

每次更新我的Python文件时,都必须重新启动服务器以查看更改。我试过没有运气重启Nginx和uWSGI。 Flask以调试模式运行。如何在不重新启动整个服务器的情况下查看更改?

app.py

from flask import Flask
import time
import cv2

app = Flask(__name__)

@app.route("/")
def main():
   return "Hello cob at " + time.time().__str__() + "\n"

if __name__ == "__main__":
    app.run(debug=True)

uwsgi.ini

[uwsgi]
socket = :9090
plugin = python
wsgi-file = /home/vagrant/PythonVision/app.py
process = 3
callable = app

nginx.conf

server {
  location / {
    include uwsgi_params;
    uwsgi_pass 127.0.0.1:9090;
  }
}

我正在使用以下步骤对此进行测试:

  • 将返回消息从“Hello cob”更改为“hello bob”,保存文件
  • 在浏览器中刷新页面(清除浏览器缓存)无变化
  • sudo service uwsgi restart,sudo service nginx restart
  • 在浏览器中刷新页面(清除浏览器缓存)无变化

2 个答案:

答案 0 :(得分:2)

所以,我解决这个问题的一种方法是在我的uwsgi.ini文件中执行此操作

touch-reload = /home/vagrant/PythonVision/app.py

然后我触摸文件app.py和BANG sorted

答案 1 :(得分:1)

要在调试模式下实际运行烧瓶应用程序,请运行以下命令:

python /home/vagrant/PythonVision/app.py

然后您可以使用浏览器:http://ip:5000/

由于我知道你是在流浪汉上运行的,ip可能是由你的配置定义的,但这超出了这个问题的范围。