這個問題可能是多餘的,但我在搜索很多參考時沒有得到具體答案。如何限制資源(js,html,pdf,css,圖片)的強力瀏覽
我有以下結構的項目。
MyProject
-JavaResources
- build
- src
- main
- java
- resources
- webApp
- META-INF
- resources
- WEB-INF
- jsps
在這個項目中struture我有在上下文根資源(JS,CSS,圖像,PDF,HTML)(Web應用程序)文件夾,但WEB-INF的出邊。
在JSP中我得到的資源與如下上下文根路徑:
<a href="<%=request.getContextPath()%>resources/Help.html" target="_blank"> </a>
由於這種資源可以通過上下文根路徑瀏覽器直接acceesed並導致強制瀏覽。
我找到的一個參考是應用程序MyProject \ src \ main \ java \ resources文件夾。最終進入到WEB-INF/classes文件夾 但按照Servlet規範
/WEB-INF /班/ *的servlet和實用工具類目錄。此目錄中的 類由應用程序類加載器使用,以從 加載類。
所以我不確定這個資源是否合適。
我想知道最佳實踐和放置位置以在Web應用程序中具有所有類型的資源(css,js,html,pdf,css),這可以限制強大的瀏覽以及在jsp中訪問它們的方式。
在此先感謝。
感謝您的回覆,我正在使用application.getResourceAsStream(「/ Help.html」)和getClass.getResourceAsStream(「/ Help.html」)這兩個不在這裏工作是代碼 \t \t \t \t \t \t \t target="_blank">我做錯了什麼? –
'getResourceAsStream()'允許從您的java代碼讀取類路徑中文件的數據。你爲什麼要用它在JSP中生成鏈接?這沒有任何意義。你想達到什麼目的? –
它是一個圖像鏈接,點擊圖像時,一個html頁面將在新標籤頁中打開。由於安全問題,我可以將它放在上下文根目錄以及WEB-INF之外。這就是爲什麼我決定放入資源文件夾,因此無法直接訪問。 –