簡體   English   中英

查看上傳的圖片所需的正確路徑是什么?

[英]What is the correct path I need to see my uploaded image?

在我的Web應用程序中,我的頁面之一是將照片上傳到路徑

/usr/local/rac/picture-name-goes-here

照片上傳正常,但是我需要在另一個頁面中訪問它,當我嘗試從JSP訪問它時,它不會顯示,我猜我的照片路徑不正確

我的JSP中用於訪問照片的代碼如下所示。

            <tr>
                <td>
                    <img src="/usr/local/agent/photo-name-here.jpg"/>
                </td>
            </tr>

我對這張照片的路徑是否不正確? 如果有幫助,我正在從目錄中的Tomcat運行我的Web應用程序

C:\\的Tomcat6

我最終將把它轉移到Linux機器上,並期望與照片共享相同的路徑。

這里有一個主要的誤解。 HTML由網絡瀏覽器而不是網絡服務器執行。 Web瀏覽器下載HTML,掃描還需要下載的任何資源(CSS,腳本,圖像等),並為每個資源激發一個新的HTTP請求 所有資源都應指向一個有效的URL ,而不是客戶端計算機不知道的某些本地磁盤文件系統路徑。

基本上有兩種方法可以解決此“問題”:

  1. 在Tomcat的/conf/server.xml添加一個新的Context

     <Context docBase="/usr/local/agent" path="/images" /> 

    這樣,就可以通過http://example.com/images/ ...訪問它們,並且您可以使用以下<img>

     <img src="/images/photo-name-here.jpg"/> 
  2. 創建一個Servlet ,該Servlet基本上獲取圖像的InputStream並將其沿着正確的標頭集寫入響應的OutputStream中。 您可以在此處找到此類servlet的基本示例,並在此處找到更高級的示例。 Servlet映射到web.xml /images/*時,可以通過http://example.com/contextname/images/ ...訪問圖像,並且您可以按如下方式使用它(假設JSP / HTML文件位於上下文根目錄中:

     <img src="images/photo-name-here.jpg"/> 

src="/usr/local/agent/photo-name-here.jpg" <-此URL是服務器中的本地地址,要顯示圖像,必須設置有效的HTTP地址,例如:

http://www.yourdomain.com/images/photo-name-here.jpg

為此,您需要將照片上傳到www根文件夾中的localpath

如果您的webapp已安裝在

  • /home/apache/www/website/

您將圖像上傳到以下文件夾:

  • /home/apache/www/website/images/

然后您的HTTP地址將是

  • http://www.yourdomain.com/images/photo-name-here.jpg

我對您在/usr/C:\\Tomcat兩個路徑有些困惑

我建議您將上載的localpath文件夾設置為參數,因此您將只修改配置文件,而不是訪問該本地路徑的每個函數或方法。

暫無
暫無

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

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