如何解决通过url模式映射Apache-Tomcat Servlet失败404错误
我对通过url-pattern进行Apache-Tomcat Servlet映射有问题。 到去年为止,它一直运行良好。 最近,我尝试登录,突然出现404 Not Found错误。 我仍然看到其他所有页面。我不知道服务器端发生了什么变化,因为我是从vultr借用了linux服务器。 由于我在编码中没有碰任何东西,而且一切对我来说看起来都很好,所以我没有任何线索。 对于专家来说似乎很容易解决。有人可以帮我吗?
-错误消息
Not Found
The requested URL /login.do was not found on this server.
Apache/2.4.12 (Ubuntu) Server at xx.xx.xx.xx Port 80
此处xx是我的服务器的IP地址
-tomcat / conf / server.xml
...
<Context path="" docBase="/.../tomcat/webapps/.../WebContent" reloadable="true"></Context>
...
-tomcat / conf / web.xml
...
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
...
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
...
-myapp / WEB-INF / web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>myapp</display-name>
...
<servlet>
<servlet-name>URIController</servlet-name>
<servlet-class>myapp.mvc.control.URIController</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>
/WEB-INF/commandHandler.properties
</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>URIController</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
...
-myapp / WEB-INF / commandHandler.properties
/login.do=myapp.mvc.command.Login
当我尝试登录时,它显示“在此服务器上找不到请求的URL /login.do”。 它一直像这样正常工作:按下“登录”按钮时,它将commandHandler.properties中的内容传递给控件类(myapp.mvc.control.URIController),并且该类获取登录类的名称(myapp.mvc) .command.Login)以将请求分派到登录类。
如果这个问题与Apache有关,我不知道(甚至不知道在这里显示什么),因为它是由5年前的付费专家完成的。
非常感谢!
解决方法
那是一个httpd错误消息,而不是Apache Tomcat。看起来有些事情(无法从提供的信息中分辨出什么)破坏了从httpd到Tomcat的反向代理。您需要与为您设置反向代理的任何人交谈。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。