我正在使用Java Servlets 3.1.0构建一个简单的webapp 有没有办法可以通过URL直接阻止访问WEB-INF中的页面?
例如:
我的dashboard.jsp
文件夹中有WEB-INF
文件。我还有一个名为DashboardServlet
的servlet可以使用/dashbboard
访问,我使用RequestDispatcher
转发dashboard.jsp
现在,当我访问localhost:8080/dashboard
时,会显示dashboard.jsp
。
但是,当我尝试访问localhost:8080/dashboard.jsp
如何阻止localhost:8080/dashboard.jsp
访问localhost:8080/dashboard
,同时仍然可以{{1}}。
谢谢!
答案 0 :(得分:1)
WEB-INF目录包含一个层次结构,您可以在其中找到Web应用程序的必要配置信息,以及JSP(Java Server Pages)调用的servlet和类的所有类文件。 WEB-INF目录是Web应用程序的重要组成部分,没有它就无法运行!
这基本上意味着WEB-INF完全是为了隐藏Jsp文件。
因此,如果将JSP文件复制到WEB-INF,则无法以localhost:8080 / dashboard.jsp格式访问它们。
还要检查Web.xml以获取正确的servlet映射条目。