作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 tomcat 中有一个上下文路径为“/cas”的 servlet 网络应用程序。
当我访问“http://localhost:8080/cas”时,tomcat 将重定向到“http://localhost:8080/cas/”。
是否在任何文档中指定了此行为?
“/cas”有没有servlet?
最佳答案
它返回重定向,因为这些是 Java Servlet 规范修订版 3.0 中 12.1 Use of URL Paths 部分中指定的规则。它也存在于所有其他 Servlet 规范版本中(以不同的编号)。
/cas
和/cas/
是有区别的。其中一个对您的应用程序不可见(即没有您可以映射的 url-pattern
会导致您的 Web 应用程序中的资源响应),另一个将被您的应用程序视为/
.
如果您将 ROOT
应用程序中的 /cas
映射到某个东西,Tomcat 将忽略它,因为有一个最长匹配规则覆盖它(上下文映射到 /cas
) 所以你的 /cas
应用程序将覆盖你在你的 ROOT
应用程序中映射到那里的任何内容。
根据定义,/cas
请求是一个没有尾随 /
的目录请求,因此 Tomcat 执行重定向添加 /
.然后 10.10 Welcome Files 部分开始发挥作用,Tomcat 将检查您的应用程序以确定下一步要做什么。
关于tomcat - 为什么tomcat用斜杠重定向上下文路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50752991/
我是一名优秀的程序员,十分优秀!