【问题标题】:UrlRewriteFilter Is Not Taking Effect in TomcatUrlRewriteFilter 在 Tomcat 中不生效
【发布时间】:2021-01-29 18:59:27
【问题描述】:

我的网站托管在 Tomcat 下的 Centos 中。 网络运行良好。 (WEB-INF 中没有 web.xml)

我想使用 urlrewritefilter-4.0.4.jar 为 jsp 页面创建一个永久链接 但是上传后,地址web.com/COVID-19显示404。

这是我的 web.xml(默认)

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <filter>
        <filter-name>UrlRewriteFilter</filter-name>
        <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>UrlRewriteFilter</filter-name>
        <url-pattern>/*</url-pattern>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>FORWARD</dispatcher>
    </filter-mapping>
</web-app>

这是我的 urlrewrite.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN" "http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd">
<urlrewrite>
    <rule>
        <from>/COVID-19</from>
        <to>/covid19.jsp</to>
    </rule>
</urlrewrite>

请帮忙,谢谢。

【问题讨论】:

    标签: jsp tomcat http-status-code-404 tuckey-urlrewrite-filter


    【解决方案1】:

    所以,当我在绝望中挣扎了几个小时后,在午夜深夜沉思时,我开悟了。

    urlrewritefilter 不起作用的原因是因为 Tomcat 真的没有什么可响应的。 它是 Apache,它只将 url 转发到以 *.jsp 和 servlet (mod_jk) 结尾的 Tomcat。 所以很自然,Tomcat 没有得到任何以“COVID-19”结尾的 url,因为它是由 Apache 处理的。

    我修改了配置,现在运行流畅。 感谢上帝。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-12
      • 1970-01-01
      • 2016-01-12
      • 1970-01-01
      • 2012-03-19
      • 2018-03-23
      • 1970-01-01
      相关资源
      最近更新 更多