Tomcat執行中的那些問題

2021-08-07 13:04:29 字數 952 閱讀 9631

invalid character found in the request target. the valid characters are defined in rfc 7230 and rfc

linux部署專案(本地執行良好,tomcat版本7)後出現標題所示錯誤,查詢資料得知,tomcat8版本增加了對請求的校驗。

rfc3986文件規定,url中只允許包含英文本母(a-za-z)、數字(0-9)、-_.~4個特殊字元以及所有保留字元。

rfc3986中指定了以下字元為保留字元:

!*'();:@&=+$,/?#
還有一些字元,當他們直接放在url中的時候,可能會引起解析程式的歧義。這些字元被視為不安全字元,原因有很多。

->空格url在傳輸的過程,或者使用者在排版的過程,或者文字處理程式在處理url的過程,都有可能引入無關緊要的空格,或者將那些有意義的空格給去掉

->引號以及<>引號和尖括號通常用於在普通文字中起到分隔url的作用

->#通常用於表示書籤或者錨點

->%百分號本身用作對不安全字元進行編碼時使用的特殊字元,因此本身需要編碼

->{}|\^`~某一些閘道器或者傳輸**會篡改這些字元

故,該錯誤是由於請求中url引數「違法」造成的。解決辦法:① 降低tomcat版本;

② 對url中引數進行url編碼;

博文採用第二種方法,如下圖所示:

這裡原因在於引入了乙個commons-validator.jar,導致進行很多校驗,短時間內看tomcat卡在了100%處,時間長一點就會由於超時啟動失敗(超時這個可以設定時間)。將該jar去掉,重新啟動,正常!

python中遇到的那些問題

本文會記錄我在學習python中遇到的一些問題以及解決辦法。2014 05 03 才開始學習python就遇到乙個莫名其妙的麻煩 剛才寫的hello world的出現,再次python的時候就報錯,我只是再次開啟了程式修改了乙個文字而已呀!基於學習計算機語言的基礎,心態還是好的,於是慢慢分析錯誤提示...

那些 問題和bug

1sdf時間格式 yyyy mm dd hh mm ss 錯寫 為hh會導致缺少8h。時區問題,同樣會導致缺少8h誤差 可以在jvm啟動時設定 時區 duser.timezone asia shanghai string 物件的 intern 方法,呼叫時,如果當前string 字串已經在常量池中了...

關於前端相容性的那些問題

關於市場上瀏覽器種類很多,不同瀏覽器的核心也不盡相同,所以各個瀏覽器對網頁的解析存在一定的差異。每個瀏覽器又有不同的版本,不同瀏覽器不同版本因為瀏覽器本身渲染引擎的不同,在對於w3c標準的支援版本不同造就了一大堆的兼用性問題。先是五大瀏覽器 瀏覽器核心 ie瀏覽器 trident核心 chrome瀏...