我尝试在使用 WSGI 脚本时显示堆栈跟踪或至少某种呈现到 HTML 响应的错误。ModuleNotFound
当我尝试导入脚本似乎找不到的模块时引发了异常(目前还好),但 HTTP 响应中报告的只是一个相当模糊的内部服务器错误状态 500 错误,看起来像是 Apache 的工作。
我怎样才能显示堆栈跟踪?
其他信息:我使用 Windows Server 进行此操作,Apache 2.2(独立,非 WAMP)作为服务,CherryPy 3.2.2。我正在使用同一本地网络上的另一台计算机通过网络共享编辑脚本;我不熟悉远程 WSGI 调试,但如果有人知道如何在不依赖 apache 的错误日志的情况下进行调试,我很乐意提出一些建议。我尝试了很多 CherryPy 的配置选项,但都无济于事,所以我很想知道是否有人对此非常熟悉。
如果您有任何想法,请告诉我;谢谢!
答案1
下次只需添加:
'global':{'request.show_tracebacks':True}
到您的 cherrypy 配置设置。
答案2
它很简单,只需巧妙地将所有内容包装在一个大的 try/except 中,并在主回复函数中包含模块(令人讨厌),然后使用字符串格式的异常版本进行回复。
不用说,我最终为此创建了一个 Django 项目(可能是最好的)。
Django 完成了一些工作,然后还有一些其他工作。