原 荐 记录下死磕过的一个坑

栏目: 服务器 · 发布时间: 6年前

记录下死磕过的一个坑

  charmsongo 发布于 11/10 11:35

字数 696

阅读 44

收藏 0

Java EE Tomcat

开发十年,就只剩下这套 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如何一次性修改用户连接数?

原 荐 记录下死磕过的一个坑

charmsongo

粉丝 0

博文 12

码字总数 7403

作品 0

海淀

程序员

提问

相关文章 最新文章

【死磕 Spring】—– IOC 之分析各 scope 的 bean 创建

原文出自:http://cmsblogs.com 在 Spring 中存在着不同的 scope,默认是 singleton ,还有 prototype、request 等等其他的 scope,他们的初始化步骤是怎样的呢?这个答案在这篇博客中给出。...

chenssy

10/24

0

0

『学概念找员外』比特币之未消费的交易输出(UTXO)

来历 恨啊,这个拗口的词,害的员外一直理解不了这是个什么意思。好在员外不懈的努力下今天终于理解了个七七八八了,原来这个未消费的交易输出就是别人支付给了你,而你还没有花出去的钱。是...

刘飞_007

05/27

0

0

原 荐 记录下死磕过的一个坑
【死磕 Spring】—– IOC 之 IOC 初始化总结

原文出自:http://cmsblogs.com 前面 13 篇博文从源码层次分析了 IOC 整个初始化过程,这篇就这些内容做一个总结将其连贯起来。 在前文提过,IOC 容器的初始化过程分为三步骤:Resource 定位...

chenssy

10/09

0

0

原 荐 记录下死磕过的一个坑
ldap+flask+python2实现统一认证里面的那些编码神坑

首先想吐槽下,直接接手别人的项目,而且是经过四五个人手的项目,是怎么个痛苦。两三套代码django、flask、tornado应有尽有,代码里,掰开手指头就可数的全英文注释,几台服务器没交接清楚,...

落叶虽美只活一世

08/10

0

0

原 荐 记录下死磕过的一个坑
【死磕 Spring】—– IOC 之parentBeanFactory 与依赖处理

原文出自:http://cmsblogs.com 如果从单例缓存中没有获取到单例 bean,则说明两种两种情况: 该 bean 的 scope 不是 singleton 该 bean 的 scope 是 singleton ,但是没有初始化完成 针对这两...

chenssy

10/18

0

0

没有更多内容

加载失败,请刷新页面

加载更多
大数据教程(7.4)HDFS的java客户端API(流处理方式)

博主上一篇博客分享了namenode和datanode的工作原理,本章节将继前面的HDFS的java客户端简单API后深度讲述HDFS流处理API。 场景:博主前面的文章介绍过HDFS上存的大文件会成不同的块存储在不...

em_aaron

昨天

0

0

聊聊storm的window trigger

序 本文主要研究一下storm的window trigger WindowTridentProcessor.prepare storm-core-1.2.2-sources.jar!/org/apache/storm/trident/windowing/WindowTridentProcessor.java public v......

go4it

昨天

4

0

CentOS 生产环境配置

初始配置 对于一般配置来说,不需要安装 epel-release 仓库,本文主要在于希望跟随 RHEL 的配置流程,紧跟红帽公司对于服务器的配置说明。 # yum update 安装 centos-release-scl # yum ins...

clin003

昨天

6

0

GPON网络故障处理手册

导读 为了方便广大网络工作者工作需要,特搜集以下GPON网络处理流程供大家学习参考。开始—初步定为故障—检查光纤状况—检查ONU状态--检查设备运行状态—检查设备数据配置—检查上层设备状态...

问题终结者

昨天

5

0

原 荐 记录下死磕过的一个坑
MariaDB、Apache安装

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

原 荐 记录下死磕过的一个坑

没有更多内容

加载失败,请刷新页面

加载更多

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

编程.建筑

编程.建筑

保罗·科茨 / 2012-9 / 45.00元

《编程•建筑》简单明了地介绍了计算机算法与程序用于建筑设计的历史,解释了基本的算法思想和计算机作为建筑设计工具的运用。作为计算机辅助设计的先驱,保罗·科茨通过多年讲授的计算、设计的教学内容和实例研究,向我们展示了算法思维。《编程•建筑》提供了详细、可操作的编码所需要的技术和哲学思想,给读者一些代码和算法例子的认识。一起来看看 《编程.建筑》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具