记录下死磕过的一个坑
原
荐
字数 696
阅读 44
收藏 0
开发十年,就只剩下这套 Java 开发体系了 >>>
写在前面
最近公司项目提了个很正常的需求,为什么说是很正常的需求呢,保守点说,大多数的项目都会默认有这样的功能,那就是tomcat指定404页面,具体情况请听我再啰嗦啰嗦。有这么一场景,有人想攻击一家的项目,但是攻击前需要了解该公司项目的具体组成部分才可以进行真正的攻击吧,但是我也不知道该项目都有哪些目录?目录下有哪些文件?可以用笨方法就是去试,用一个大概常用的路径去访问该项目地址,比如ip/项目名/xxx,不存在的路径会看到默认的404页面会显示tomcat的版本和其它的一些信息,敏感信息会暴露,有点危险,所以我公司不想让别人看到这些,那就需要指定一个页面,找不到的路径都要转发这个页面。
1.修改web.xml
修改的文件路径如下,只要放在tomcat下的都走这个配置
/*/*/tomcat/conf/web.xml
在web.xml文件最后添加内容如下,error-code是浏览器状态码为404就转发404.jsp页面,这里需要注意一下,我就载在了这里,location是当前运行项目的下的路径,通俗点讲就是,一个项目名为songo,那么404.jsp页面就要放在songo项目下,对应的路径就是/songo/404.jsp,其实我也不知道为什么是这样设置,但是就是这样好使了
<error-page> <error-code>404</error-code> <location>/404.jsp</location> </error-page> </web-app>
这样的话就有个问题,如果tomcat下有多个项目,那每个项目根下都要放一个相同的404.jsp页面,如果您有什么更好的办法欢迎留言
2.404页面注意问题
404.jsp需要添加2行内容,如下
<%@ page language="java" contentType="text/html; charset=gbk" pageEncoding="gbk" isErrorPage="true"%> <%response.setStatus(HttpServletResponse.SC_OK);%>
这2行主要是告诉浏览器访问服务器不存在的资源跳转的错误处理页面,但是返回正常的状态码,并且正常显示页面内容另外,具体页面请到 github 自行 下载
说在最后,如果有哪里有问题或写的不对的,请留言,我会尽量在第一时间给您答复
© 著作权归作者所有
共有人打赏支持
上一篇: Centos 搭建Git服务器
下一篇: ORACLE如何一次性修改用户连接数?
相关文章 最新文章
原文出自:http://cmsblogs.com 在 Spring 中存在着不同的 scope,默认是 singleton ,还有 prototype、request 等等其他的 scope,他们的初始化步骤是怎样的呢?这个答案在这篇博客中给出。...
chenssy
10/24
0
0
来历 恨啊,这个拗口的词,害的员外一直理解不了这是个什么意思。好在员外不懈的努力下今天终于理解了个七七八八了,原来这个未消费的交易输出就是别人支付给了你,而你还没有花出去的钱。是...
刘飞_007
05/27
0
0
原文出自:http://cmsblogs.com 前面 13 篇博文从源码层次分析了 IOC 整个初始化过程,这篇就这些内容做一个总结将其连贯起来。 在前文提过,IOC 容器的初始化过程分为三步骤:Resource 定位...
chenssy
10/09
0
0
首先想吐槽下,直接接手别人的项目,而且是经过四五个人手的项目,是怎么个痛苦。两三套代码django、flask、tornado应有尽有,代码里,掰开手指头就可数的全英文注释,几台服务器没交接清楚,...
落叶虽美只活一世
08/10
0
0
原文出自:http://cmsblogs.com 如果从单例缓存中没有获取到单例 bean,则说明两种两种情况: 该 bean 的 scope 不是 singleton 该 bean 的 scope 是 singleton ,但是没有初始化完成 针对这两...
chenssy
10/18
0
0
没有更多内容
加载失败,请刷新页面
加载更多博主上一篇博客分享了namenode和datanode的工作原理,本章节将继前面的HDFS的java客户端简单API后深度讲述HDFS流处理API。 场景:博主前面的文章介绍过HDFS上存的大文件会成不同的块存储在不...
em_aaron
昨天
0
0
序 本文主要研究一下storm的window trigger WindowTridentProcessor.prepare storm-core-1.2.2-sources.jar!/org/apache/storm/trident/windowing/WindowTridentProcessor.java public v......
go4it
昨天
4
0
初始配置 对于一般配置来说,不需要安装 epel-release 仓库,本文主要在于希望跟随 RHEL 的配置流程,紧跟红帽公司对于服务器的配置说明。 # yum update 安装 centos-release-scl # yum ins...
clin003
昨天
6
0
导读 为了方便广大网络工作者工作需要,特搜集以下GPON网络处理流程供大家学习参考。开始—初步定为故障—检查光纤状况—检查ONU状态--检查设备运行状态—检查设备数据配置—检查上层设备状态...
问题终结者
昨天
5
0
11月12日任务 11.6 MariaDB安装 11.7/11.8/11.9 Apache安装 1.MariaDB安装 cd /usr/local/src wget https://downloads.mariadb.com/MariaDB/mariadb-10.2.6/bintar-linux-glibc_214-x86_64/......
hhpuppy
昨天
1
0
没有更多内容
加载失败,请刷新页面
加载更多以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。