我在ErrorReportValve中的主机部分设置了一个Server.xml:
<Valve className="org.apache.catalina.valves.ErrorReportValve"
errorCode.400="webapps/ROOT/error.html"
showReport="false"
showServerInfo="false" />用于errorCode.nnn状态的Tomcat文档:
-8编码的HTML文件的位置,以返回由nnn表示的HTTP代码。例如,errorCode.404指定要返回HTTP 404错误的文件。位置可以是相对的,也可以是相对的。如果是相对的,则必须是相对于$CATALINA_BASE。如果没有为状态代码定义错误页,则可以使用errorCode.0的特殊值来定义要使用的默认错误页。如果没有找到匹配的错误页,则将返回默认的错误报告阀门响应。
我的$CATALINA_BASE指向/usr/share/tomcat8 8,在webapp/ROOT/error.html中可以找到与此相关的错误页面:
# ls -lrt /usr/share/tomcat8/webapps/ROOT/error.html
-rw-r--r-- 1 tomcat tomcat 2934 Aug 31 18:24 /usr/share/tomcat8/webapps/ROOT/error.html我可以看到ErrorReportValve通过修改showReport和showServerInfo值而生效,但是我无法理解如何引用errorCode.nnn,因为我尝试了许多静态和相对路径的组合。
我可以让它在运行动态web项目的Eclipse中非常好地工作,但是Eclipse中的相对路径是wtpwebapp/myProject/error.html,这与ElasticBean秸秆/ Amazon无关。我还可以获得404 /500个错误,尽管这些错误目前是在web.xml中以旧的方式定义的,因此相对路径是不同的。
有人能在Amazon / Tomcat中获得400个错误的静态错误页面吗?
发布于 2022-09-02 06:45:23
Tomcat 8.5.75不支持此功能,请使用8.5.78或更高版本。
https://stackoverflow.com/questions/73571544
复制相似问题