[英]Where should JSF 2.2 resources be placed: WEB-INF or root
在JSF 2.2之前,諸如javascript,css和復合組件之類的資源將放在/resources
文件夾中Web存檔的根目錄下。 此設置隨附WEB-INF中的安全約束,以防止直接訪問:
<security-constraint>
<display-name>Restrict direct access to JSF resources</display-name>
<web-resource-collection>
<web-resource-name>JSF resources</web-resource-name>
<url-pattern>/resources/*</url-pattern>
</web-resource-collection>
<auth-constraint />
</security-constraint>
但是,在JSF 2.2中,您可以簡單地將resources文件夾放在WEB-INF: /WEB-INF/resources
。 這為資源提供了直接訪問的隱式保護。
根據Tomcat文檔和IBM文檔的 WEB-INF
將其描述為存儲配置文件的文件夾。 將非配置資源放在WEB-INF
似乎只是為了獲得WEB-INF
目錄的保護,這似乎是一種黑客。
兩種存儲資源的方法是否效果相同? 它們對這兩種方法都有什么具體的缺點嗎?
您可以安全地將資源放在WEB-INF下,這將使您免於忘記保護它免受直接訪問的錯誤,僅此而已! 如果您想扎根保護,其效果將是相同的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.