javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面

1、新建a.jsp页面,输入如下代码,由于分母为0,肯定代码异常

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第1张图片

2.访问浏览器,页面展示如下,很不友好,且暴露服务器版本等重要信息

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第2张图片

3.在a.jsp页面顶部增加代码 errorPage="/error.jsp"

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第3张图片

4.新建error.jsp页面,位置如下

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第4张图片

5.代码如下:

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第5张图片

6.浏览器中访问a.jsp 出现错误信息提示,说明正确跳转到了error.jsp

而浏览器中的URL仍然是a.jsp 说明这个错误跳转是个请求转发

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第6张图片

7.但如果直接访问error.jsp的话,会出现如下错误,报了空指针异常,这是因为exception.getMessage()本身就是空方法。

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第7张图片

8.而且error.jsp本身就是个错误提示页面,不能被用户直接访问。

那如何改变呢?

如下图,把error.jsp放入WEB-INF 目录下,

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第8张图片

9.tomcat服务器WEB-INF目录内的东西是不能被用户直接访问的

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第9张图片

10.修改a.jsp页面代码,重新指向错误页面

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第10张图片

11.访问仍然正常

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第11张图片

12.但由于a.jsp页面本身能被用户访问,代码容易暴漏给用户,所以不提倡这么做。

把a.jsp页面的错误提示去除

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第12张图片

13.在web.xml 中添加如下代码

javaWeb中由于报错页面暴露服务器版本等重要信息统一设置错误页面_第13张图片

14.这才是javaweb常用的错误提示页面配置方式

你可能感兴趣的:(java,web)