首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Tomcat/Java 301 重定向實戰:基於 UrlRewriteFilter 的 SEO 域名規範化

     編輯:Java 程式設計入門

核心原理

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 排除,開發調試不觸發跳轉。

關鍵屬性解析

部署步驟

  1. 引入 urlrewritefilter.jar
  2. web.xml 註冊 Filter,映射 /*
  3. 放置 urlrewrite.xml 至 WEB-INF
  4. 驗證:curl -I https://jb51.net/ → 301 Location: https://www.jb51.net/

注意事項

  • HTTPS 站點需跳轉至 HTTPS 目標,避免雙重重定向
  • 負載均衡器層面同樣可做 301,性能更優
  • 搜索引擎收錄以最終規範域名為準
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
屬性含義
type="permanent-redirect"發送 HTTP 301 狀態碼
last="true"匹配後停止後續規則處理
operator="notequal"條件不匹配時執行