我在 apache 服务器上部署了一个 python Flask 应用程序。这是我的abc.conf
file:
WSGIDaemonProcess voting_app threads=5
WSGIScriptAlias /election /var/www/voting_app/voting.wsgi
LogLevel info
ErrorLog "/var/www/voting_app/error.log"
CustomLog "/var/www/voting_app/access.log" combined
<Directory /var/www/voting_app>
WSGIProcessGroup voting_app
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
为了检查调试,我在应用程序中犯了一个语法错误。重新启动服务器时,我收到 500 服务器错误,但我无法在任何地方看到错误的详细信息。我检查了作为日志添加的两个文件 - 它们完全是空白的。日志文件也是如此/var/log/apache2
。我在这里缺少什么?
当在生产环境中运行 Flask 时,而不是使用内置的开发服务器,它会将应用程序异常转换为 HTTP 500 响应,但不记录任何内容。所以你所看到的情况是正常的。
如果您是唯一查看该站点的人,您可以暂时启用调试模式,就像开发服务器自动完成的那样。有关如何执行此操作的信息,请参阅:
http://flask.pocoo.org/docs/quickstart/#debug-mode http://flask.pocoo.org/docs/quickstart/#debug-mode
具体来说:
app.debug = True
其中“app”是 Flask 类实例。
这将导致发出请求的浏览器中显示错误的详细信息。
在真正的生产系统上,您显然不应该使用它,因此在这种情况下,您应该设置 Flask 来记录此类应用程序错误。为此,请参阅:
http://flask.pocoo.org/docs/errorhandling/ http://flask.pocoo.org/docs/errorhandling/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)