tomcat中修改maxPostSize属性及注意事项
1、概述
在项目过程中,遇到当客户端的post的请求过大的时候,后台出现报错的情况。
经过查找,发现是tomcat有对POST请求的大小的限制,是通过参数maxPostSize来进行限制的,默认的情况下,大小限制是2m。
本文介绍如何修改tomcat的maxPostSize属性
2、环境说明
本次修改的tomcat版本:9+
[root@nctest-snap-test-02 apache-tomcat-9.0.43]# bin/version.sh
Using CATALINA_BASE: /data/apps/apache-tomcat-9.0.43
Using CATALINA_HOME: /data/apps/apache-tomcat-9.0.43
Using CATALINA_TMPDIR: /data/apps/apache-tomcat-9.0.43/temp
Using JRE_HOME: /data/jdk
Using CLASSPATH: /data/apps/apache-tomcat-9.0.43/bin/bootstrap.jar:/data/apps/apache-tomcat-9.0.43/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Server version: Apache Tomcat/9.0.43
Server built: Jan 28 2021 20:25:45 UTC
Server number: 9.0.43.0
OS Name: Linux
OS Version: 3.10.0-862.3.3.el7.x86_64
Architecture: amd64
JVM Version: 1.8.0_202-b08
JVM Vendor: Oracle Corporation
3、参数修改过程
找到server.xml文件(conf目录下)
在如下的部分中,加入maxPostSize参数
<Connector port="8889" protocol="HTTP/1.1"
connectionTimeout="20000"
maxPostSize="-1"
redirectPort="8443" />
注意,参数值是-1,必须是小于1的(后面,我们再解释为什么)
maxPostSize="-1"
修改好,以上的参数之后,重新启动tomcat即可。
4、注意事项
在不同的版本中,有maxPostSize的值的设置会有不同,如下所示:
- tomcat 7.0.63之前,maxPostSize设置小于等于0的值(≼0),表示不限制
- tomcat 7.0.63及之后,maxPostSize设置小于0的值(<0),表示不限制
我们是tomcat 9,所以,maxPostSize的值设置为-1即可不限制。