tomcat - 为什么我不能访问像 "xx.jsp"(/webapps/root/xx.jsp) 这样的文件?

标签 tomcat

首先,tomcat启动成功,我可以用浏览器访问“Root”目录下名为“index.jsp”的文件,浏览器显示tomcat主页,但是当我尝试创建一个名为“xx.jsp”的新文件时”并访问它,浏览器显示“404”(当我创建一个像“xx.html”这样的文件时,浏览器正确显示页面)我想知道原因,我会很感激enter image description here如果有人可以帮助我,我会很高兴

最佳答案

您尝试访问 tomcat 资源的方式不正确,如 JSP 文件存在于 webapps 下的根文件夹中的问题中所述,除非您将请求映射到 web.xml 中的 JSP,否则您必须访问 JSP 文件这样“localhost:8080/root/xx.JSP”你的资源所在的位置对如何访问它有很大的影响,除非你对资源映射发出某种请求。

我的网络应用程序中名为“eeee”的文件夹下有一个文件,这就是我访问它的方式 enter image description here

花一些时间阅读关于 servlet mapping 的内容和 context mapping您将能够更多地了解如何访问您之前创建的文件。

但作为简要说明:

您可以使用 localhost:port/path-to-file-after-webapps-folder/filename 访问您在应用程序中创建的文件,您可以通过这种方式访问​​您想要的任何文件(甚至图像和文本文件),但作为你可以看到这是不安全的,因为任何人都可以不受限制地访问你网站内的任何文件,为了能够防止这种行为,将服务器收到的请求重定向 [all/sub] 到特定的 java 类或 jsp,具体取决于特殊的标准。

例如你在项目中有如下文件

enter image description here

要能够访问此文件并将所有请求映射到此文件,请将以下内容添加到您的 web.xml 文件中:

enter image description here

如您所见,我们将 jsp 文件映射到您的网站 (/*) 收到的所有请求,但是例如,如果您只想映射带有特定短语的请求,请将 * 替换为您想要的词。

这是映射后文件的访问方式: enter image description here

关于tomcat - 为什么我不能访问像 "xx.jsp"(/webapps/root/xx.jsp) 这样的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50077645/

相关文章:

java - Tomcat7安全样本如何调用login.jsp?

java - 在 Docker 中的 Tomcat 上进行 JMX 和调试

Java OutOfMemory 异常 : mmap failed for CEN and END part of zip file

tomcat - 如何将现有的地理服务器独立应用程序迁移到网络存档?

java - 如何将 Web 应用程序中的集成小程序部署到 Tomcat 中

tomcat - JDBC 连接仅在 Tomcat 中失败

java - 在 Tomcat 中部署 GWT RPC 应用程序

java - Tomcat windows服务无法访问网络驱动器

apache - 运行 Apache Tomcat 时的错误消息

tomcat - 在 Tomcat 上将 servlet 部署为共享 jar 库时的路径问题