Fla*_*viu 38 python wsgi flask
我打电话给app.run(debug=True)我的烧瓶文件.
我用uWSGI和nginx部署了它(我遵循了这些说明)
uwsgi -s /tmp/uwsgi.sock -w flask_file_name:app -H /path/to/virtual/env --chmod-socket 666
Run Code Online (Sandbox Code Playgroud)
但是当我收到错误时,我没有在浏览器或uWSGI日志中获得任何调试信息.
有任何想法吗?
flask_file_name.py:
from flask import Flask, make_response, Response, jsonify
import json
app = Flask(__name__)
app.debug = True
@app.route("/")
def hello():
return "Hello World!"
if __name__ == '__main__':
app.run()
Run Code Online (Sandbox Code Playgroud)
gon*_*onz 31
这个问题很老了,但我会发布这个以供将来参考......
如果你想让werkzeug错误页面与uwsgi一起使用,请尝试使用werkzeug的DebuggedApplication中间件:
from werkzeug.debug import DebuggedApplication
app.wsgi_app = DebuggedApplication(app.wsgi_app, True)
Run Code Online (Sandbox Code Playgroud)
这应该是诀窍,但不要忘记仅在开发环境中这样做.
Edw*_*rdr 25
根据Flask邮件列表,您不能使用Flask的调试选项uWSGI,因为它不能在分叉环境中使用.
你看到502因为flask/werkzeug没有向web服务器发送任何数据,所以nginx将返回502.
您可以使用uWSGI中的--catch-exceptions选项模拟调试器(但请不要在生产中执行)
所以,你看到502s的原因就在于此.修复将是添加--catch-exceptions到uWSGI执行.
Rob*_*ers 22
问题是uwsgi不打电话app.run().它叫app().所以你可以这样做:
from flask import Flask
app = Flask(__name__)
app.debug = True
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22195 次 |
| 最近记录: |