1. 程式人生 > 其它 >tomcat中修改maxPostSize屬性及注意事項

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即可不限制。