任何人都可以告诉我如何能够禁用Tomcat6显示堆栈跟踪输出到浏览器?
Tomcat:6.0.29
我对/opt/apache-tomcat-6.0.29/conf/web.xml进行了以下更改
<error-page> <exception-type>java.lang.Throwable</exception-type> <location>/error.jsp</location> </error-page>
我被告知把这个到位会给一个白色的屏幕,如果该文件不存在,但是我得到堆栈跟踪到屏幕上。
我相信在你的.jsp页面的顶部,你也需要添加这样的内容:
<%@ page errorPage="errorpage.jsp" %>
不确定,但是可能必须在应用程序本地web.xml文件中添加错误页面元素。
如果你把一个HTTP服务器放在tomcat的前面,那么你不仅可以在tomcatclosures的时候提供一个页面,而且你也可以覆盖tomcat生成的错误页面,直接进入tomcat也可以看到堆栈跟踪。
例如,如果您使用Apache HTTPD,则可以使用ProxyErrorOverride指令来显示本地HTML页面而不是堆栈跟踪。 就像是
# Do not proxy the 500 error page to tomcat ProxyPass /my500error.html ! # Proxy all other requests to tomcat running an HTTP connector on port 8080 ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/ # Override 500 error page from tomcat ProxyErrorOverride on ErrorDocument 500 /my500error.html
这里使用AJP有很多的变化,而不是HTTP和你select的HTTP服务器。