为什么我在web.xml文件中隐藏.jsp扩展名时出现404错误?

时间:2017-10-02 09:10:15

标签: java apache jsp tomcat servlets

我在web.xml文件中配置了所有JSP页面以隐藏.jsp扩展名,并且由于SEO的观点我在每个JSP页面对应的web.xml文件中创建了自定义URL但是当我在服务器tomcat上部署此应用程序时在Apache Web服务器下运行,所以我的服务器团队回复了我,但我没有得到他们的意思。

  

请注意,您运行的是apache是​​Web的服务器   server和Tomcat是一个servlet容器。这样所有的静态请求   例如图像,CSS,js,HTML由apache和jsp,servlet处理   由Tomcat处理。这意味着Apache将转发任何​​请求   您使用以下扩展名发送到tomcat

.jsp 
/servlet 
.do
     

这意味着为了让Tomcat执行您需要发送的代码   请求apache为.jsp,/ servlet和.do。一旦你发送这种方式,   它会自动发送到tomcat在那里运行。在你的情况下   /主机将仅由apache执行,这就是你得到这个的原因   错误404。

的web.xml

<servlet>
   <servlet-name>domain</servlet-name>
   <jsp-file>/domain-registration.jsp</jsp-file>
</servlet>
<servlet-mapping>
   <servlet-name>domain</servlet-name> 
   <url-pattern>/domain-registration</url-pattern>
</servlet-mapping>

1 个答案:

答案 0 :(得分:0)

请给出正确的错误,你在哪个网址上获得404?

尝试在web.xml中指定的任何其他url-pattern,检查它是否正常工作。我认为你的web.xml文件中存在一些语法错误,否则它应该起作用。