2012-05-21 25 views
0

我需要上傳文件到我的webapp以外,並且可以在瀏覽器之後提供它們。所以看了很多帖子後,我決定創建一個符號鏈接。我有一個問題,因爲我已經在tomcat5/Catalina/loclahost/myApp.xml中有一個上下文。 我給它添加了屬性allowlinking = true和override = true。 但我無法使用我的瀏覽器訪問我上傳的文檔。 我認爲這兩個重定向不能一起工作,但我不知道如何以其他任何方式進行。 所以任何想法將受到歡迎與DocBase的Tomcat SymLink

+1

你可以升級到Tomcat 6嗎? TC6有「別名」,我認爲它會做你想做的事。 –

+0

不,我不能,但我的信息我會看看這個。 –

+0

您是否需要嵌套URL空間?例如,/ myapp/upload和/ myapp/files/...? –

回答

1

如果你需要一個安全的地方,將文件上傳到你的web應用程序,你需要把它們完全在任何Web應用程序的文檔庫之外 - 這包括使用符號連接「摩的」到您的通過利用DefaultServlet爲您提供這些位的URL空間。否則會導致在卸載Web應用程序時讓Tomcat刪除所有上傳的文件。

如果您不必升級到Tomcat 7.0(我強烈推薦),那麼我建議您編寫自己的servlet,將其映射到/ myapp/files/*,並讓該servlet讀取來自上傳目錄的文件並將這些位提供給客戶端。有很多方法可以讓DefaultServlet爲您完成這些工作(而不是實質上在您自己的servlet中複製它的完整功能集),但它並不總是很好,並且在舊版Tomcat中可能根本不起作用,因爲DefaultServlet假定它映射到「/」而不是像「/ files」。

+0

我最終這一直在等待,直到一切工作正常。我沒有使用默認的servlet。感謝您的支持。 –