簡體   English   中英

Tomcat Manager App:使用IE時部署失敗,Chrome正常運行

[英]Tomcat Manager App: Deploy fail when using IE, Chrome works

新服務器上的Tomcat Manager應用程序出現了一個奇怪的問題。 上載戰爭文件時,用戶路徑信息將包含在應用程序名稱中。
示例:上載OMS-PRIME戰爭時,管理器應用程序部署為/ C:usersUserNameDesktopOMS-PRIME

這僅在使用Internet Explorer時發生。 如果使用Chrome瀏覽器打開管理器應用程序,則不會發生這種情況。 IE是我們的企業標准瀏覽器。

  • 伺服器:Windows Server 2012R2
  • 雄貓:8.0.35
  • 的Java:1.8.0_92-b14
  • Internet Explorer 11

有任何想法嗎?

通過在文件名值中包含未轉義的反斜杠,Internet Explorer當前不符合RFC6266。

如果您能夠使用定制版本的Tomcat,則可以在HttpParser.unquote中重新引入條件,如果條件未以雙引號開頭,則該條件僅返回未修改的字符串:

Index: http://svn.apache.org/repos/asf/tomcat/tc8.5.x/trunk/java/org/apache/tomcat/util/http/parser/HttpParser.java
===================================================================
--- java/org/apache/tomcat/util/http/parser/HttpParser.java (revision 1755813)
+++ java/org/apache/tomcat/util/http/parser/HttpParser.java (working copy)
@@ -62,7 +62,7 @@
     }

     public static String unquote(String input) {
-        if (input == null || input.length() < 2) {
+        if (input == null || input.length() < 2 || input.charAt(0) != '"') {
             return input;
         }

您還可以通過執行以下操作,通過修改IE使其不發送filename屬性中的完整路徑來解決此問題:

1)上網選項
2)安全標簽
3)選擇相關區域
4)點擊自定義級別...
5)在“其他”下,將“將文件上傳到服務器時包括本地目錄路徑”選項更改為“禁用”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM