解決Tomcat的maxPostSize屬性的配置需要注意的問題
需求:
近期要做大文件上傳功能,除了修改前端框架上傳控件jQuery Uploadify的上傳文件限制大小和Spring MVC框架配置的文件上傳模塊中的MultipartResolver中的文件上傳限制大小,還需要去修改Nginx服務(wù)器中conf目錄下的nginx.conf配置文件中的client_max_body_size屬性以及Tomcat服務(wù)器中conf目錄下的server.xml配置文件中的connectionTimeout屬性、maxPostSize屬性,以上內(nèi)容就是我做的修改。
問題:
先是修改Nginx服務(wù)器和Tomcat服務(wù)器的配置,重啟Nginx服務(wù)器,再是修改頁面和代碼后重新部署和運行,然后在頁面進行大文件上傳操作,然后提交保存都出現(xiàn)了問題,自己懷疑可能是大文件保存出現(xiàn)了問題,忙著去查看服務(wù)器上的日志,接著同事又說文件刪除功能失效,接下來又有同事說網(wǎng)站登錄不上了,輸入正確的驗證碼后報錯說是驗證碼登錄過期,,,,各種問題接踵而至,看了半天的服務(wù)器日志沒有發(fā)現(xiàn)問題,還是自己看的不仔細,也沒有定位到問題出現(xiàn)在哪里。
排查:
無奈去請求大牛,先是問我修改了哪些東西,我說Nginx服務(wù)器和Tomcat服務(wù)器的配置我都修改了,大??戳薒inux上的Nginx服務(wù)器的配置文件和Tomcat服務(wù)器的server.xml配置文件,回頭問我maxPostSize=“0”屬性的配置是什么意思,我說是HTTP的POST請求下的body大小不做限制,如果不設(shè)置的話,缺省的情況下是maxPostSize=“2097152”,也就是2M的大小,因為單位是Byte。大牛接著去查看了相關(guān)資料,得知可能是Tomcat版本帶來的問題,不同的Tomcat版本maxPostSize屬性設(shè)置的可能有差異,知道了問題所在,那么就去著手進行配置了。
解決:
百度了下Tomcat maxPostSize這兩個關(guān)鍵詞,很幸運的是第一條就是關(guān)于Tomcat不同版本的maxPostSize的設(shè)置,
這篇博客內(nèi)容
看了這篇博客,接著去查看Linux下的項目使用的統(tǒng)一的Tomcat版本,使用的版本是Tomcat 7.0.70,接著看這篇文章你還能說什么,改唄,將屬性maxPostSize修改為-1,代表不限制,重啟Tomcat服務(wù)器,重新登錄網(wǎng)站和以上出現(xiàn)的問題都沒有了。
附上這個博主的博客地址:https://www.jb51.net/article/190134.htm
總結(jié):想著昨天出現(xiàn)的這個問題,今天休息正好可以總結(jié)一下,接著去看Tomcat官網(wǎng)上的相關(guān)文檔,去看下這個問題。如今Tomcat版本更新很快,很多Tomcat7的版本不再好找,我們可以查看最新的Tomcat7版本信息,打開Tomcat官網(wǎng)后,查看
Documention下的Tomcat7.0
接著查看Reference下的Configuration部分
接著查看Connectors下的HTTP部分,這個和Tomcat下的conf中的server.xml配置文件的結(jié)構(gòu)有很大的相關(guān)性,只要你很熟悉server.xml配置,那么找到這個不是問題
查看相關(guān)屬性,我們就會看到maxPostSize的詳細介紹,這個限制必須設(shè)置為小于0的負數(shù)才能不限制,缺省下是2097152,也就是2M的大小,單位是Byte。
你要知道以上的介紹僅僅是Tomcat 7.0.86版本的信息
那么我們怎么看Tomcat歷史版本的變化呢,回到剛開始進來的文檔首頁,點擊最下方的Changelog部分,
這里面是Tomcat7所有的歷史版本的變化,我們找到Tomcat 7.0.63版本,可以看到變化的第一項就是關(guān)于maxPost屬性的內(nèi)容,上面的博客的哥們果然是滿滿的干貨,雖然內(nèi)容少,但是一擊必中啊。
通過以上的總結(jié),如果以后出現(xiàn)類似的問題,排查問題的能力要有所提升,自己總結(jié)問題的排查步驟:
- 第一:查看服務(wù)器上的各種日志
- 第二:查看服務(wù)器上的各種配置文件
- 第三:考慮各個版本的差異,就比如上面的問題,這個前提是你要知道你修改了哪些配置,增加了哪些配置。
總結(jié)
到此這篇關(guān)于解決Tomcat的maxPostSize屬性的配置需要注意的問題的文章就介紹到這了,更多相關(guān)Tomcat的maxPostSize屬性配置內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。