我在 Ubuntu 9.04 上的 Tomcat 6 上部署了一個 Java Web 應用程式。對於某些圖像,我想建立到另一個圖像目錄的符號連結。這將使我能夠引用保留在伺服器上的映像,即使應用程式已刪除並重新部署也是如此。
應用程式部署在該/var/lib/tomcat6/webapps/ROOT/
目錄中,並且該images
目錄存在於war中。當我部署應用程式時,我創建了一個指向該saved_images
目錄的符號鏈接,因此存在一個類似於/var/lib/tomcat6/webapps/ROOT/images/saved_images/
.
在應用程式中,我有以下程式碼:
File file = new File("/var/lib/tomcat6/webapps/ROOT/images/saved_images/abc.jpg");
boolean fileExists = file.exists();
程式碼運行時該fileExists
值為 true,但是當像 一樣引用時,圖像不會顯示在頁面上images/saved_images/abc.jpg
。
/var/lib/tomcat6/webapps/ROOT/images
和中的鏡像的權限/var/lib/tomcat6/webapps/ROOT/images/saved_images
是相同的(所有者和群組都是tomcat6,與war中部署的其他檔案相同)。如果我刪除符號連結並將saved_images 檔案放入同名目錄中,則會顯示圖片。當目錄是符號連結時,如何讓頁面顯示這些圖像,而不必將檔案複製到真實目錄?
答案1
您是否嘗試過將以下內容新增至您的context.xml
文件?
<Context path="/foobar" allowLinking="true">