Tomcat 本身無 301 功能,通過 UrlRewriteFilter(Java Filter)攔截請求,按規則發送 301 永久重定向,統一域名入口,利於 SEO 權重集中。
<urlrewrite>
<rule>
<name>seo redirect</name>
<condition name="host" operator="notequal">^www.jb51.net</condition>
<from>^/(.*)</from>
<to type="permanent-redirect" last="true">https://www.jb51.net/$1</to>
</rule>
</urlrewrite>
非 www.jb51.net 的請求全部 301 跳轉至 www.jb51.net,保持路徑不變。
<urlrewrite>
<rule>
<name>seo redirect</name>
<condition name="host" operator="notequal">^www.jb51.net</condition>
<condition name="host" operator="notequal">^localhost</condition>
<from>^/(.*)</from>
<to type="permanent-redirect" last="true">https://www.jb51.net/$1</to>
</rule>
</urlrewrite>
新增 localhost 排除,開發調試不觸發跳轉。
| 屬性 | 含義 |
|---|---|
type="permanent-redirect" | 發送 HTTP 301 狀態碼 |
last="true" | 匹配後停止後續規則處理 |
operator="notequal" | 條件不匹配時執行 |