如何从wsgi应用返回apache错误页面?
我有一个简单的WSGI应用程序,它可以成功返回我想要的任何HTTP状态码、头信息和HTML内容。现在我想做的是,当我返回的状态码不是'200 OK'时,希望WSGI能够让Apache使用它自己的错误处理方式,显示根据'ErrorDocument'设置配置的页面。
举个例子,当我的WSGI应用程序意外崩溃时,这个功能就很好用,那时我会看到Apache默认的'内部服务器错误'页面。
我想问的是,如何能以一种可控和有意的方式做到这一点?比如说,我可以先进行自己的身份验证,然后再回退到我设置的默认Apache页面。
有没有什么好的想法?
1 个回答
5
假设你是想在Apache服务器下使用mod_wsgi,确保你使用的是mod_wsgi的守护进程模式,并设置:
WSGIErrorOverride On
在mod_wsgi 3.0的发布说明中有简单提到这一点。
http://code.google.com/p/modwsgi/wiki/ChangesInVersion0300
如果你是把Apache当作代理,前面放着一个独立的Python网络服务器在运行WSGI应用,那就要使用Apache的ProxyErrorOverride指令。