我對我的應用程序使用struts 1.3,並且所有jsp頁面都通過控制器(操作類)轉發。但是如果我直接訪問jsp頁面,我可以訪問它。我如何防止這種情況?拒絕直接訪問jsp頁面
15
A
回答
16
把所有的JSP-S內部WEB-INF文件夾(例如,在WEB-INF/jsp的文件夾),不要忘了更改關於JSP-位置映射秒。
1
您可以使用過濾器和限制使用URL這要求.jsp頁面,只允許請求其索要請求。做
4
過濾器是用來繞過或中斷請求,所以使用過濾器來限制請求,如果它不包含URL中的.do。下面是很好的教程濾波器
2
我認爲最好的辦法是把你的網頁在WEB-INF文件夾 - 這樣,他們將無法直接訪問,但隨後在小服務程序,你可以有這樣的:
public class ControllerServlet extends HttpServlet {
/**
* Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String userPath = request.getServletPath();
// if category page is requested
if (userPath.equals("/category")) {
// TODO: Implement category request
// if cart page is requested
} else if (userPath.equals("/viewCart")) {
// TODO: Implement cart page request
userPath = "/cart";
// if checkout page is requested
} else if (userPath.equals("/checkout")) {
// TODO: Implement checkout page request
// if user switches language
} else if (userPath.equals("/chooseLanguage")) {
// TODO: Implement language request
}
// use RequestDispatcher to forward request internally
String url = "/WEB-INF/view" + userPath + ".jsp";
try {
request.getRequestDispatcher(url).forward(request, response);
} catch (Exception ex) {
ex.printStackTrace();
}
}
取自:http://netbeans.org/kb/docs/javaee/ecommerce/page-views-controller.html
相關問題
- 1. 直接html頁面訪問被拒絕
- 2. 如何拒絕直接訪問頁面
- 3. Asp.net拒絕直接訪問網頁
- 4. 拒絕訪問html頁面
- 5. 如何拒絕直接訪問某些頁面
- 6. JSP拒絕未登錄用戶直接訪問URL
- 7. 拒絕直接訪問S3上
- 8. 拒絕直接訪問php文件
- 9. 拒絕直接URL訪問文件
- 10. 拒絕直接訪問配置文件
- 11. 拒絕直接訪問PHP文件
- 12. 如何防止從jsp頁面的url直接訪問頁面
- 13. 如何拒絕要直接接受的頁面,只能通過登錄訪問
- 14. cfm頁面不會被拒絕訪問
- 15. 直接訪問亞馬遜S3訪問被拒絕
- 16. 訪問拒絕連接
- 17. 嘗試進入reqacc.aspx頁面時拒絕訪問頁面
- 18. 403 - 禁止:訪問被拒絕。當快速訪問頁面
- 19. 訪問被拒絕,您無權訪問此頁面
- 20. 訪問http:// localhost/phpmyadmin /頁面時拒絕訪問
- 21. 如何用Spring加載直接訪問JSP頁面?
- 22. 如何保護我的jsp頁面免於直接訪問
- 23. 只允許通過jsp頁面訪問Servlet;不直接
- 24. 直接鏈接禁止頁面訪問
- 25. 拒絕訪問試圖刪除頁面佈局或母版頁
- 26. 從JSP頁面訪問ArrayList
- 27. (ACCES拒絕)拒絕訪問異常
- 28. 拒絕訪問拒絕RegCopyTree在C
- 29. 訪問被拒絕
- 30. 訪問被拒絕
+1 - WEB-INF隱藏是最常用的方法。如果您閱讀文檔和示例,他們通常會使用此設置。 – pap