如何變更網域, 而沒有流去 SEO 排名


網站排名對網站的流量十分重要, 目標的關鍵字出現在搜尋頁面的第一面, 可以增加很多目標流量。

同一網域下的網頁被認為是同一個網站, 如果網域變更了, 所有網頁的排名也會有影響。要變更網域有很多原因, 例如有合拼、重新開設新品牌, 或選擇一個更適合網站內容的域名等,但如果沒有正確的實施變更域名, 網站多年建立的排名權重可能也會失去掉。以下是變更網域的步驟。

1. 先把網站放到新域名, 如果是同一台主機, 最簡單的方法是開設一個 Virtual Host 或 Server Block, Document Root 指向跟原來網站同一個目錄。如果網站內的連結不是使用相對連結, 而是在 a href 標籤指向完整的網址, 這個也需要更改。

完成後先瀏覽新域名, 檢查是否一切正常, 看看有沒有死 link, 連到舊域名等錯誤。

2. 這時先到 Google Search Console, 把新網域加入到 Google Search Console。如果舊網域未有加入, 也要一拼加入。

3. 新域名測試可以上線後, 便可以把舊域名的頁面用 301 轉址到新域名。這個步驟要留意, 不能單純地把每一頁轉到新網域便了事, 需要把每一頁轉到新網域相應的頁面, 例如:

www.old-domain.tld/webpage.htm

轉到

www.new-domain.tld/webpage.htm

以上設定不用每個網頁手動逐一設定, 可以一次過完成, 以下是 .htacess 及 Nginx 的轉址方法, 以下會假設舊網域是 old-domain.tld, 新網域是 new-domain.tld:

.htaccess

如果網站是使用 Apache 並支援 .htaccess, 只要在舊網域的根目錄的 .htacess, 加入以下幾行:

.htaccess


  • RewriteEngine On
    RewriteCond %{HTTP_HOST} ^old-domain.tld$ [OR]
    RewriteCond %{HTTP_HOST} ^www.old-domain.tld$
    RewriteRule (.*)$ http://www.new-domain.tld/$1 [R=301,L]

Nginx 301 轉址

開啟 Nginx 的設定檔, 不同的 Linux 發行版有不同的預設位置, 或者在網域的個別的設定檔, 預設位置分別是:

/etc/nginx/conf/
/etc/nginx/

開啟設定檔後, 找到網站的 Server Block 段落, 加入 Redirect 301 轉址

4. 這時進入 Google Search Console, 選擇舊域名, 按左下方的 “設定”, 點選以下連結:

變更網址 在網站移至新位址時通知 Google

在 “選擇新網站” 選擇新網域, 並按 “驗證並更新”

5. 如果網站有 Sitemap, 在 Google Search Console, 選擇新網域, 點選 “Sitemap”, 把新網站的 Sitemap 提交。

舊域名需要繼續保留, 最少持續 3 至 6 個月(或者更久) 301 轉向, 以便 Google 完全把關鍵字排名權重轉移到新網域。

現在可以觀察流量的變化, 一般剛開始變更網站, 搜索流量會在幾天內大幅下降, 但流量往後會慢慢回升。這個過程不會在兩、三個星期內完成, 按網站的頁面數量而定, 較大型的網站所需的時間較久。

Tags:

Leave a Reply