som*_*ode 1 python api ubuntu nginx flask
我按照指南在这里设置我的 api:https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-uwsgi-and-nginx-on-ubuntu-14-04
它工作得很好,我现在可以成功地对我的 api 进行查询。我的问题是,现在我想调整我的 Flask 应用程序/API 以执行稍微不同的操作并添加功能,但我正在 ping 的 API 似乎是旧的,尽管我已通过 ssh 更新了服务器上的 Flask .py 文件。我尝试完成教程中的所有步骤,希望能够刷新它访问的代码,但似乎没有任何效果。我尝试过的一些命令是:
sudo nginx -t
sudo service nginx restart
Run Code Online (Sandbox Code Playgroud)
我该如何执行此操作并 ping 更新的 Flask .py 文件?
根据我尝试过的建议:
restart myproject
Run Code Online (Sandbox Code Playgroud)
但这给出了以下错误:
restart: Rejected send message, 1 matched rules; type="method_call", sender=":1.8" (uid=1000 pid=2596 comm="restart thonapi ") interface="com.ubuntu.Upstart0_6.Job" member="Restart" error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init ")
Run Code Online (Sandbox Code Playgroud)
您正在重新启动 Nginx,但没有重新启动 uwsgi。Nginx 只是一个将请求路由到 wsgi 应用程序的代理服务器。当你改变 Nginx 的配置时,这些命令就会起作用。但是当 wsgi 应用程序发生更改时,您必须重新启动 uwsgi 服务。
您可以通过以下命令重新启动服务。这取决于 init 系统服务正在使用什么
如果服务使用systemd系统。
sudo systemctl restart myproject
否则,如果它使用 upstart 脚本。
sudo restart myproject
如果全部失败,您可以使用或者如果您不知道正在使用的 init 系统:
sudo service restart myproject