網站搬家、改版怎麼不掉排名?301 轉址與網址對照表

我們 2026 年 9 月把官網從 Wix 搬到 Cloudflare Pages。這篇用這次搬家的實際紀錄,講網址對照表怎麼做、301 和 302 怎麼選,以及搬完四週要看什麼。

先說結論

網站搬家或改版要保住搜尋流量,重點是每個舊網址都有明確去處:從 Search Console、舊 sitemap 和外部連結列出 Google 認得的舊網址,逐一對到內容最接近的新網址,用伺服器端 301 轉過去,至少保留一年。網址能沿用就沿用;只有換網域或子網域才需要網址變更工具。搬完幾週內曝光有波動是正常的。

從正上方拍攝的橄欖綠亞麻布上,兩個打開的牛皮紙搬家箱裝著用麻繩綁好的紙包,旁邊有一個黃銅指南針和一張攤開、帶摺痕的空白米色紙
網站搬家、改版怎麼不掉排名?301 轉址與網址對照表 封面視覺

2026 年 9 月 20 日,我們把 ethorx.com 從 Wix 搬到 Cloudflare Pages。文章網址沿用 Wix 原本的 /blog/<slug>,裸網域 ethorx.com 統一 301 到 www.ethorx.com。切換當天把新站的頁面逐一點過,都能正常打開。

10 月 2 日回 Search Console 對帳,還是抓到一個 404。那是一篇不在 Wix 後台已發布清單裡的舊文章,搬家時我們手上的清單沒有它。Google 卻記得它:從 2025 年 12 月 14 日第一次出現在搜尋結果,到那時都還有曝光。

這篇用這次搬家的實際紀錄,走一遍網址對照表、轉址方式和搬家後的檢查。轉址是 SEO 的基本功裡最容易被當成工程小事的一項,出錯時掉的是已經累積好的搜尋曝光。

先決定哪些網址真的要動

搬家之前先問一句:網址一定要改嗎?能沿用的網址就沿用,沿用的網址不需要轉址,Google 那邊也不用重新認識一次。我們換了整套平台,文章網址卻一個都沒改,因為 Astro 的內容檔用檔名當網址,我們直接把 Wix 的 slug 拿來當檔名。

需要轉址的情況其實只有幾種:

這次改了什麼要不要設轉址我們的例子
只換主機或平台,網址完全相同不用轉址;確認 sitemap 與 canonical 指向同一組網址文章頁 /blog/<slug> 沿用
http 改 https、裸網域改 www要,全站轉到單一版本ethorx.com 全部 301 到 www.ethorx.com
網址結構改了(分類、slug、結尾斜線)要,逐條對照10 月 6 日把 /geo/ 這類結尾斜線改成 301 到 /geo
換網域或子網域要,再加上 Search Console 的網址變更工具這次沒有遇到
頁面刪除、沒有替代內容讓它回 404 或 410—

改網址的理由通常很正當:舊平台的網址又長又醜、分類重新整理、想把語言放進路徑。我的建議是先估代價。每改一條網址,就多一條要維護的轉址、多一個要等 Google 重新檢索的頁面。網址結構只是不好看的話,搬家當下先別動,等新站穩定了再分批改,出問題也比較好追。

我們也有漏掉的地方。寫這篇時回頭檢查,才發現一位作者頁的網址從 Wix 的帳號代號改成了姓名拼音,舊網址當初沒有設轉址,發現後才補上 301。作者頁、標籤頁、圖片、PDF 這類「不是文章」的網址,最容易在對照表裡被忘記。

網址對照表:清單要從 Google 認得的網址開始拉

對照表最常見的錯誤,是只從後台的文章清單開始做。後台列的是網站現在有什麼,Google 記得的是網站曾經有過什麼,兩份清單常常對不上。

我們的 404 就是這樣來的。搬家時從 Wix 抓的快照只有 4 篇已發布文章,那篇舊文不在裡面,可能更早之前就被下架了,什麼時候、為什麼下架,我們查不到。10 月 2 日我們改從 Search Console 拉近三個月有曝光的網址,共 117 個,逐一用 curl -L 確認最後的狀態碼,只有這一個回 404。後來我們在原網址重寫了內容,網址救回來,也不需要轉址。

對照表要先列 Google 認得的舊網址,再對到新網址。清單可以從這幾個地方拉:

  1. Search Console 成效報表的「網頁」分頁:期間拉到最長的 16 個月,匯出所有有曝光的網址。這是最重要的一份。
  2. 舊站的 sitemap 與後台匯出:補上還沒有曝光、但已經存在的頁面。
  3. 外部連結:Search Console 的連結報表,或 Ahrefs 這類工具的熱門被連結頁。別人的網站連到你的舊網址,搬家後那些連結還在。
  4. 分析工具的到達網頁:GA4 裡有人從廣告、電子報進來的頁面,Search Console 不一定看得到。
  5. 不是文章的網址:作者頁、標籤頁、圖片、PDF、下載檔。

清單合併、去掉重複之後,每一列填上去處。我們用的欄位是這樣:

舊網址新網址處理方式近三個月曝光外部連結備註
/blog/<slug>同一個網址沿用有—只換主機
ethorx.com/<path>www.ethorx.com/<path>301有有全站規則
/geo//geo301有—10 月 6 日加入
已下架的舊文原網址重寫恢復 200有—10 月 2 日處理

紙雕場景:左邊一排老舊木信箱,右邊一排米色新信箱,上面四組用青綠色麻繩一對一連起來,最下面那個舊信箱的線垂在地上沒有接到任何新信箱 每個舊網址都要接到一個新網址;沒接上的那一條,就是搬家後才冒出來的 404。

去處要選內容最接近的那一頁。舊的產品頁對新的產品頁,舊的教學文對新的教學文。找不到對應的頁面,就讓它回 404,別把它們全部轉到首頁。Google 的搬家說明寫得很直接:大量舊網址轉到一個不相干的頁面(例如新站首頁),可能被當成軟性 404 處理,等於沒轉。

301、302、canonical 怎麼選

301、302 和 canonical 都在處理「同一份內容、兩個網址」,差在你想讓 Google 記住哪一個:

情況用什麼Google 怎麼看
永久搬家、改網址301 或 308強烈訊號,目標網址應該成為標準網址
暫時下架、維修、短期活動302 或 307轉址不算標準網址訊號,搜尋結果通常顯示原網址
兩個網址都要能打開(例如帶追蹤參數)rel="canonical"也是強烈訊號,Google 綜合其他訊號判斷
內容刪除、沒有對應頁404 或 410曾經收錄的網址會從索引移除

搬家幾乎都是 301。302 最常見的誤用是平台預設就給 302,或工程師「先用 302 試試看」之後忘了改,結果幾個月後,Google 可能還把舊網址當成正本。

canonical 和 301 的差別,我們自己剛好有例子。網站上線時,/geo/ 和 /geo 兩種寫法都會回 200,靠 canonical 告訴 Google 正本是不帶斜線的那個。這樣也能運作,但兩個網址都是候選,Google 要自己挑。10 月 6 日我們改成 301:帶斜線的版本直接轉走,Google 只看得到一個網址。

同一頁有兩個可以打開的網址,能轉就轉,canonical 留給真的需要兩個都能開的情況,例如帶 UTM 參數的廣告網址。canonical 和 AI 引用網址之間的關係,另外寫在 canonical 會控制 AI 引用嗎。

轉址放在伺服器端,跳轉次數越少越好

常用的轉址方式有三種:伺服器端轉址、立即的 meta refresh、JavaScript 轉址。伺服器端最可靠,JavaScript 轉址要等頁面被渲染才看得到,只在前兩種都做不到時才用。實務上,WordPress 多半用外掛設定,電商平台通常在後台有網址轉址功能,自己管主機的話寫在 Apache、Nginx 或 CDN 的規則裡。

我們的轉址寫在 Astro 的 middleware 裡,每個請求進來先檢查網域和結尾斜線,兩個問題一起處理,只轉一次:

// src/middleware.ts(節錄)
if (shouldRedirect(host) || normalizedPath) {
	// 裸網域與結尾斜線一次轉到最終網址,不疊兩次 301
	const target = new URL(context.request.url);
	if (shouldRedirect(host)) {
		target.protocol = 'https:';
		target.host = 'www.ethorx.com';
	}
	if (normalizedPath) target.pathname = normalizedPath;
	return context.redirect(target.toString(), 301);
}

設好之後用 curl -sI 看實際回應最準。2026 年 10 月 11 日對正式站測的結果:

https://ethorx.com/blog/seo-tools-guide/
→ 301 https://www.ethorx.com/blog/seo-tools-guide(網域和斜線一次處理)

http://ethorx.com/blog/seo-tools-guide/
→ 301 https://ethorx.com/blog/seo-tools-guide/(Cloudflare 先轉 https)
→ 301 https://www.ethorx.com/blog/seo-tools-guide

第二個例子多了一跳:http 先被 Cloudflare 轉成 https,才輪到我們的 middleware。Google 的爬蟲最多會跟 10 次轉址,兩跳不會出問題,只是每多一跳,載入就多等一次。要做的是站內連結和 sitemap 一律寫最終網址,讓轉址只負責接住外面進來的舊連結,站內自己不繞路。

搬家後四週,每週看什麼

切換完成只是開始。Google 的說明是中小型網站要幾週,多數頁面才會轉到新網址,這段期間曝光有波動是正常的。我們搬家後照這個順序檢查:

  1. 切換當天:抽 20 到 30 個重要的舊網址,用 curl -sI 或瀏覽器的開發者工具確認狀態碼是 301、目的地正確。新 sitemap 送進 Search Console,確認 robots.txt 沒有擋住新站,每頁的 canonical 都指向自己的新網址。
  2. 第一週:用 Search Console 的網址檢查抽查流量最高的幾頁。要求建立索引每天有配額,網址多的話要排優先順序;我們 10 月 6 日就碰過當天的上限,剩下的網址改成分幾天送。
  3. 第二、三週:看網頁索引報表的「頁面會重新導向」和「找不到網頁 (404)」。理想狀態是兩張清單裡都是舊網址;出現新網址,代表站內連結或轉址規則有錯。
  4. 第四週:在成效報表比較搬家前後同一組頁面。換了網域或從裸網域改成 www 的話,新舊兩種網址要合併起來看,詳細做法在 Search Console 教學。

還有一個容易嚇到人的狀態。搬家後我們檢查一篇舊文,網址檢查顯示「遭到 noindex 標記排除」,但新站那一頁根本沒有 noindex。仔細看檢索時間,是 9 月 19 日、搬家前一天,Google 看到的還是舊站的版本。報表顯示的是 Google 上次檢索時的狀態,看到不合理的結果先對檢索日期,再決定要不要要求重新檢索。

轉址設好之後要留多久?Google 建議至少一年,越久越好。外部連結還指向舊網址的話,我會一直留著,一條轉址規則的維護成本遠比掉一個外部連結低。

只有換網域或子網域時(例如從 example.com.tw 搬到 example.com),才需要 Search Console 的網址變更工具。它要求新舊兩個資源都由同一個帳號管理,舊網域的首頁要先 301 到新網域,送出後的通知會持續 180 天。我們這次網域沒變,只是改成 www,不需要用它。

網站搬家時,新站的速度也常一起改變,這部分可以接著看 網站速度怎麼測。sitemap 在搬家後扮演的角色,在 sitemap 能幫爬蟲找到頁面嗎 有更完整的說明。

我們能協助的部分

我們的官網與電商開發在網站建置或搬遷時,會在專案初期盤點舊站的文章、商品與會員資料,移轉既有內容並設定 301 轉址。上面那張對照表的欄位可以直接拿去用。已經搬完、想確認有沒有漏掉的網址,可以先照這篇的四週清單自己檢查一輪。

常見問題

301 轉址之後,舊網址的排名會轉到新網址嗎?

Google 會把永久轉址當成強烈訊號,新網址通常會接手舊網址在搜尋結果裡的位置,只是要等 Google 重新檢索、處理完。搬家期間短期波動很常見。轉到內容差很多的頁面(例如全部轉首頁),就比較難接住原本的排名。

301 轉址要保留多久?

Google 建議至少一年,能留更久就留更久。外部網站還連著舊網址的話,建議一直保留。

只換網域,除了 301 還要做什麼?

除了逐條 301,還要在 Search Console 用網址變更工具通知 Google。新舊兩個網域都要驗證成資源、由同一個帳號管理,舊首頁要先轉到新首頁。舊網域的 www、不帶 www 和其他子網域,工具不會一起搬,要各自送一次,平常沒在用的版本也一樣。http 改 https、裸網域改 www、站內路徑調整都用不到這個工具。

舊文章刪掉了、沒有對應的新頁,可以轉到首頁嗎?

不建議。大量轉到首頁可能被 Google 當成軟性 404。有主題相近的頁面就轉過去;真的沒有,就讓舊網址回 404 或 410。

改版後新網址都沒變,還需要檢查什麼?

不用設轉址。要確認的是 http 與 https、有沒有 www、結尾斜線這些變體都收斂到同一個版本,sitemap 只列最終網址,再到 Search Console 確認新版頁面有被重新檢索。

參考來源

以下依 Google 官方文件整理,網址變更工具的適用範圍與通知期限、爬蟲跟隨轉址的次數以官方說明當下為準。

從這篇繼續看相關內容

依文章主題整理同站文章、服務/產品與 FAQ 入口,讓下一步有清楚的閱讀方向。

延伸閱讀

下一步

服務入口

了解網站診斷與 GEO 服務

先確認網站能否被搜尋引擎讀取、內容缺哪些頁面,再決定觀測與修改的範圍。

查看相關頁面

常見問題

AI 搜尋一定要求網站有作者頁嗎?

作者、來源與更新資訊各自交代什麼,先看一題直接回答。

查看 FAQ 解答

網站與搜尋

從你的網站,找出下一步該改什麼

提供官網網址,我們會先確認網站能否被搜尋引擎讀取、內容缺哪些頁面,再說明適合的觀測與修改範圍。