今天apache+tomcat部署到服务器上,用主机名访问却找不到serlvlet 报404错误。
因为apache是web容器属于静态的。tomcat属于动态的。所以使用servlet需要配置。
解决::
下面这是我的Apache 中的httpd.conf
#下面是配置serlvet映射路径 其他代码不写出来
JkMount /* ajp13
DocumentRoot "C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\Test" #这是我的项目位置
<Directory "C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\Test">
下面是我的form表单路径
以及我的web.xml中的servlet的url-patten
可以看出其实 JkMount /* ajp13是最关键的。
举个例子 我把url-patten改成 /srelvet/login
那么 配置中可以添加 JkMount /servlet/* ajp13
PS:发现上面的例子 JkMount /* ajp13这个也是可以使用。所以我想/*相当于Apache把所有的url给tomcat进行动态使用serlvlet。如果你不想范围这么大。可以准确找到servlet的url.