如何保护我的jsp页面免受直接访问

时间:2014-02-16 05:26:54

标签: java jsp servlets

我正在使用servlet和jsps进行Web应用程序。我有一个index.html

现在我需要避免从浏览器直接访问我的登录页面

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Login App using Servlet and JSP</title>
 </head>
 <body bgcolor="pink">
 <center>
 <a href="Register.jsp">Register</a>
 <a href="Login.jsp" >Login</a>
  </center>
 </body>
</html>

现在我想阻止从浏览器直接访问Login.jsp

http://localhost:9090/LoginAppWithServletsJSPJDBC/Login.jsp

通过谷歌搜索,我发现我需要使用<security-constraint>

请帮助我。我怎样才能做到这一点。

1 个答案:

答案 0 :(得分:3)

只需将Login.jsp移至WEB-INF下,即可直接从外界访问。

只有应用程序可以在需要时使用RequestDispatcher访问它。

示例代码:

// put this logic anywhere in your application whenever needed to show Login.jsp 
request.getRequestDispatcher("WEB-INF/Login.jsp").forward(request, response);

请查看What is WEB-INF used for in a Java web application?