#Tom

tomcat中SSIPrintenv.java漏洞修复

Tomcat是一个开源的轻量级Web应用服务器,在我们平常工作过程中接触得非常多。代码也非常经典,很多人为了提升自己的技术也会去阅读学习Tomcat的源码。但正如著名诗人李白所说的:世界上本没有漏洞,使用的人多了,也就发现了漏洞。比如今年的2月份就爆出了存在文件包含漏洞。今天我们选择两个比较直观的Tomcat漏洞去模拟...

tomcat中使用SessionCookieConfig接口使httpOnly值生效

描述:SessionCookieConfig用来修改会话跟踪的cookie的相关信息,包含name,path,domain,以前名称是固定的必须为JSESSIONID,但是通过该接口可以实现自定义。 背景:  Springboot2.0(spring-session-data-redis+spring-boo...

tomcat中使用ServletContainerInitializer实现自定义组件的初始化工作

简介在web容器启动时为提供给第三方组件机会做一些初始化的工作,例如注册servlet或者filtes等,servlet规范中通过ServletContainerInitializer实现此功能。每个框架要使用ServletContainerInitializer就必须在对应的jar包的META-INF/service...

tomcat中使用response.encodeURL()或response.encodeRedirectURL()实现回话追踪(session tracking)技术

HTTP是一种无连接的协议,如果一个客户端只是单纯地请求一个文件(HTML或GIF),服务器端可以响应给客户端,并不需要知道一连串的请求是否来自于相同的客户端,而且也不需要担心客户端是否处在连接状态。但是这样的通信协议使得服务器端难以判断所连接的客户端是否是同一个人。当进行Web程序开发时,我们必须想办法将相关的请求结...

Tomcat的ErrorPage实现原理分析及阀门ErrorReportValve

Tomcat错误页面支持http响应吗和Java中异常类两种形式。使用Tomcat,一定见到过404,500的时候,见到过Tomcat提供的错误页面,例如请求的资源找不到的时候,响应状态码为404,这个时候的错误页面是这样的:这些错误页面是 如何生成及定位展示的 ,如果我们要 自定义一些错...

Tomcat中Logger组件

每一个系统都有一些通用的模块,比如日志模块、异常处理模块、工具类等,对于Tomcat来说,比较重要的通用模块有日志、Session管理和集群管理。日志模块作为一个通用的功能,在系统里通常会使用第三方的日志框架。Java的日志框架有很多,比如:JUL(JavaUtilLogging)、Log4j、Logback、Log4...
代码星球 ·2021-01-08

NIO在Tomcat中的应用

个人单方面认为,NIO与BIO的最大区别在于主动和被动,使用BIO的方式需要等待被调用方返回数据,很明显此时调用者是被动的。举个例子阻塞IO假设你是一个胆小又害羞的男孩子,你约了隔壁测试的妹子,但你并不敢主动约会,所以你把自己的手机号码给她,并暗示她想要约会的时候打电话给你。很明显此时你陷入了被动,约不约会的结果需要妹...
代码星球 ·2021-01-08

tomcat中如何处理http协议的属性Connection和Tansfer-Encoding

http1.0不支持长连接,http1.1支持长连接,如果需要关闭长连接,设置connection=close,表示客户端或服务器端在发送完请求或服务端一次性把响应报文发送完给客户端后关闭连接。transfer-encoding=trunked是否分段传输响应报文,优先content-length。先说说原理:&nbs...

virgo-tomcat访问日志的详细配置

Tomcat日志信息分为两类:1、运行中的日志,它主要记录运行的一些信息,尤其是一些异常错误日志信息。2、访问日志信息,它记录的访问的时间、IP、访问的资料等相关信息。关于tomcat访问日志的产生样式说明如下(从官方文档中摘录):%a-RemoteIPaddress%A-LocalIPaddress%b-Bytess...

Tomcat应用的部署记录

1、先安装jdk,解压jdk-7u17-linux-x64.tar.gz至/opt目录、配置环境变量,在/etc/profile末加入如下内容。JAVA_HOME=/opt/jdk1.7.0_17exportJAVA_HOMEPATH=$JAVA_HOME/bin:$PATH:/usr/local/swftools/b...
代码星球 ·2021-01-02

ATOM基础教程一使用前端插件emmet(16)

 http://blog.csdn.net/zsl10/article/details/51956791emmet的前身是Zencoding,从事Web前端开发的工程师对该插件并不陌生,emmet使用仿CSS选择器的语法来生成代码,大大提高了HTML/CSS代码编写的速度。 emmet的主要功能有:...

tomcat打开gzip、配置utf-8

在部署描述文件中配置如下内容:(web.xml)打开gzip  compression="on"配置utf-8  URIEncoding="UTF-8"<Connectorport="80"protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443...

使用非root用户启动tomcat

以下操作均为以root用户运行1.添加tomcat用户组/usr/sbin/groupaddtomcat2.添加tomcat用户,并限制登录/usr/sbin/useradd-s/bin/bash-gtomcattomcat/usr/sbin/usermod-Ltomcat#锁定密码,使密码无效3.修改目录所有者:ch...

关于MyEclipse修改项目名称后,部署到tomcat显示旧的项目名称

问题:用Myeclipse部署项目的时候,  出现部署到tomcat下的项目是之前的项目,而不是当前的项目。 解决方案:工程名->右键->Properties->MyEclipse>-Web->把WebContext-root的名字给改了 再把tom...

ORM之ManyToManyField操作

"关联管理器"是在一对多或者多对多的关联上下文中使用的管理器。它存在于下面两种情况:外键关系的反向查询多对多关联关系简单来说就是当 点后面的对象 可能存在多个的时候就可以使用以下的方法create()创建一个新的对象,保存对象,并将它添加到关联对象集之中,返回新创建的对象。importdatetim...
代码星球 ·2020-12-29
首页上一页...1617181920...下一页尾页