我完全按照这里的说明操作: http://www.onurguzel.com/how-to-run-flask-applications-with-nginx-using-gunicorn/
除了当我访问domain.com,我的网站无法加载时,一切似乎都在运行。只有当我去域:5555,设置瓶运行时,我才能访问我的网站。
这是因为我的烧瓶是在调试模式下设置的吗?
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5555, debug=True)
答案 0 :(得分:1)
如果您按照帖子中的描述进行配置,那么您需要替换此
proxy_pass http://127.0.0.1:8000;
用这个
proxy_pass http://127.0.0.1:5555;
不是真正最好的nginx配置我看过它使用'if'和If Is Evil,当我有一个备用min时,我会为你重写这个配置,只要确保它在这个改变之后有效,别忘了跑
sudo service nginx reload
<小时/> 编辑:抱歉,我忘记了这一点,这是我替换
if
部分
location / {
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
try_files $uri @proxy;
}
location @proxy {
proxy_pass http://127.0.0.1:8000;
}
你可以尝试并告诉我它是怎么回事。
答案 1 :(得分:1)
运行您正在使用的应用程序的app.run()
方法不使用gunicorn或nginx,它正在运行Flask的开发Web服务器。
返回您引用的页面,重新阅读有关使用gunicorn启动应用程序的部分。一旦你使用gunicorn运行应用程序,你可以通过打开http://127.0.0.1:8000
(从服务器而不是从外部)来测试,然后使用他们提供的配置启动nginx,这将在你的域中公开应用程序