我正在使用 web.py 0.3 / apache2 / mod_wsgi 并且 cgitb 模块似乎不能开箱即用(我仍然只是从 web.py 得到“内部服务器错误”,通常的输出到 apache 的 error_log)。web.py 安装指南建议了一个对我不起作用的解决方法 - 我可能会破解它来工作,但是我应该使用更好的东西(可能是为 web.py 或 wsgi 设计的)吗?
问问题
1811 次
3 回答
3
web.config.debug = True
在创建您的应用程序之前设置。这会启用调试错误,其中包含异常的堆栈跟踪以及本地值。
于 2010-11-24T01:44:52.300 回答
0
在调试 apache2 和 web.py 时,通常最好在 apache 错误日志中捕获错误。例如,当您收到内部服务器错误时,这意味着您的应用程序无论出于何种原因都没有返回任何内容。
在 Linux 上,我只是在单独的终端中查看错误日志...
tail -f /var/log/apache2/error_log
或者
tail -f /var/log/httpd/error_log
或取决于您的分布的东西。如果存在拼写错误或错误消息或其他错误,即使您在浏览器中收到内部服务器错误,您也会在错误日志中获得典型的 python 堆栈跟踪。
于 2011-02-03T18:38:10.810 回答
0
缺乏 cgitb 也确实让我放慢了速度。这为我做到了:
尝试:输出+=TroublesomeScript(等)
除外:导入回溯;输出+=str(traceback.format_exc())
您可以根据需要美化输出,但这应该为您提供调试所需的信息。您也可以只输出 sys.exc_info(),但似乎建议使用 traceback 模块。
于 2013-03-12T19:48:45.333 回答