我在我的 web.xml 中设置了以下内容:
<error-page>
<error-code>404</error-code>
<location>/error404.jsp</location>
</error-page>
这工作正常,我得到了我期望的错误页面。然而,在应用程序代码的某些地方,他们定义了自己的状态模板,这些模板显示在这些特定的 URL/API 中
我对这些自定义模板的最大问题是它们显示堆栈跟踪和应用程序版本,这显然存在安全风险。
所以我的问题是,是否可以让 tomcat 覆盖所有错误页面并显示通用错误页面?
最佳答案
您可以创建一个 someOtherError.jsp 页面。
在 web.xml 中创建你的包罗万象
`<error-page>
<error-code>403</error-code>
<location>/403.html</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/404.html</location>
</error-page>
<error-page>
<location>/someOtherError.jsp</location>
</error-page>`
添加然后包含处理特定错误的代码。
`<body>
<% if(response.getStatus() == 500){ %>
<font color="red">Error: <%=exception.getMessage() %></font><br>
<%@ include file="login.jsp"%>
<%}else {%>
Error code is <%=response.getStatus() %><br>
Blah blah blah...
<%} %>
</body>`
关于tomcat - Tomcat中的错误页面被其他错误页面替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49803082/