Tomcat 404处理程序

时间:2013-11-02 03:15:16

标签: http-status-code-404 tomcat7 servlets

我需要向tomcat添加一个404处理程序servlet以捕获404异常(未找到)。这很简单。但无论我做什么,我都无法找到传递给tomcat的URL,从而导致404(URL +查询字符串,如果有的话)。

任何人都有这方面的经验吗?

1 个答案:

答案 0 :(得分:0)

您需要添加valve以将请求记录到该特定主机。

有多种方法可以执行此操作,具体取决于您是否拥有虚拟主机,或者您是希望在$CATALINA_BASE/conf/[engine_name]/[host_name]下添加特定配置还是直接在server.xml中添加。

对于大多数GNU / Linux发行版,假设tomcat7,默认(即使用Catalina引擎和localhost主机),这是/etc/tomcat7/Catalina/localhost。使它适应你的tomcat版本,引擎和虚拟主机(和操作系统,你没有指定一个,所以我假设一个GNU / Linux):

<Host name="localhost" ...>
   ...
   <Valve className="org.apache.catalina.valves.AccessLogValve"
     prefix="localhost_access." suffix=".log"
     pattern="common"/>
   ...
 </Host>