Tomcat 更改错误页、隐藏版本信息

说明

  • Tomcat 版本:8.5.100
  • Tomcat 针对 http 状态码响应为 404/400 的请求,会返回tomcat默认的错误页,有时由于美观或安全要求,需替换 Tomcat 默认错误页,配置方式如下

400 隐藏版本信息

  • Tomcat 遇到带不安全字符的请求时(如:|),会直接拦截请求,返回tomcat的默认的 400 页面,400页面无法在 web.
  • Tomcat 默认 400 页面如下
  • tomcat8大版本下无法替换 400 页面,但可通过参数配置,隐藏 400 页面的版本信息,配置后 404 等页面版本信息也同步隐藏
  • 默认 404 页面如下
  • server.xml 内 Host 代码块内插入如下配置,避免 tomcat 返回版本信息
1
<Valve className="org.apache.catalina.valves.ErrorReportValve" showReport="false" showServerInfo="false" />
  • 新增配置截图如下
  • 重启 tomcat 后,访问两个页面查看400/404页面

手动指定异常页面

  • tomcat8大版本下,指定400 error page 无效
  • 指定 404 error page 配置如下
  • conf/web.xml 下配置 404 error page
1
2
3
4
<error-page>
    <error-code>404</error-code>
    <location>/error_page/404.html</location>
</error-page>