【发布时间】:2013-11-14 09:55:33
【问题描述】:
我正在使用 Java Servlets 3.1.0 构建一个简单的 Web 应用程序。
有没有办法可以防止通过 URL 直接访问我的 WEB-INF 中的页面?
例如:
我的WEB-INF 文件夹中有dashboard.jsp 文件。我还有一个名为DashboardServlet 的servlet,可以使用/dashbboard 访问,我使用RequestDispatcher 转发dashboard.jsp
所以现在,当我访问localhost:8080/dashboard 时,会显示dashboard.jsp。
但是,当我尝试访问localhost:8080/dashboard.jsp 时,也会显示仪表板
我怎样才能阻止对localhost:8080/dashboard.jsp 的访问,同时仍然使localhost:8080/dashboard 上的转发成为可能。
谢谢!
【问题讨论】:
-
如果您的 jsp 文件放在 WEB-INF 中,那么如果您尝试查看
localhost:8080/dashboard它不会提供 jsp 文件,除非您的 servlet 只是读取原始 jsp 文件并输出它 -
web.xml中有什么内容?