首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

JSP 圖片無法顯示:本地路徑 vs Web 根目錄路徑

     編輯:程式設計綜合問答

現象

JSP 中 <img src="D:/project/images/photo.jpg"> 不顯示;改為 <img src="images/photo.jpg"> 並將圖片放在 WebRoot/images/ 下則正常。

原因

  • 瀏覽器**無法直接存取伺服器本地絕對路徑**(安全沙箱限制)。
  • src 屬性必須是 **相對於 Web 應用根目錄的 URL 路徑**,經由 Servlet 容器靜態資源映射提供。

正確部署結構

WebApp/
├── WEB-INF/
│   └── web.xml
├── index.jsp
└── images/
    └── photo.jpg   ← 放在此處

JSP 寫法:<img src="images/photo.jpg"> 或 <img src="${pageContext.request.contextPath}/images/photo.jpg">。

若圖片必須置於 WebRoot 外

  • 編寫 Servlet 讀取檔案流輸出,配合 Response.setContentType("image/jpeg")。
  • 或在 server.xml 設定 <Context docBase="外部路徑" path="/images" /> 映射虛擬目錄。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved