網站搬家換主機:不斷線、不掉流量的順序
約 6 分鐘
換主機這件事,聽起來像把檔案複製到另一台機器就結束了,實際上卡住的從來不是複製。真正會出事的是那些不在畫面上的東西:定期跑的排程、寄出去的通知信、憑證、上傳目錄的權限,還有切換那幾個小時裡有沒有人下單。這篇講的是網址完全不變、只換一台機器的情況,從搬之前的盤點一路講到搬完的驗收。
1. 搬家和改版是兩件事
先分清楚兩種情況。一種是網址完全不變,只把同一個網站搬到另一台主機上,理由通常是原主機太慢、太貴或服務品質有問題。另一種是重新設計網站,順便把網址結構也換掉。
兩種的風險等級差很多。改版換網址要處理舊網址的轉址對應,處理不好搜尋流量會直接掉光,站上已經有一篇專門在講網址對照表與轉址怎麼設。這篇只講網址不變的搬家,不重複那些內容。
2. 搬之前先盤點
盤點要在動手之前做完,不是搬到一半才想起來。下面這份清單的每一項,都有人在上面跌倒過。
動手之前要列完的清單
- 網域登記在哪、DNS 由誰管。這兩件事常常不在同一家,也常常不在你手上。最後一步要改 DNS,權限找不到就會卡在終點線前面。
- 網站檔案與資料庫。兩邊要一起搬,而且要取同一個時間點。時間點對不上會出現文章在、圖片不在,或是訂單少了幾筆。
- 信是怎麼寄出去的。訂單通知、聯絡表單、會員密碼重設。很多網站是直接靠主機寄信的,換了主機那套設定就沒了。
- 排程工作。定期備份、定期寄報表、定期同步庫存。這些不在網站畫面上,搬完通常要好幾天才有人發現它們根本沒在跑。
- 憑證與第三方服務。憑證要在新主機重新申請。金流、簡訊、地圖這類服務如果設了來源限制,新主機的位址要加進白名單。
盤點的重點不在列得多完整,而在對每一項問同一句話:這一項換到新主機之後,是誰負責讓它繼續動。答得出來的才算完,答不出來的就是搬完會出事的那幾項。
3. 先在新主機跑起來,先驗收
正確的順序是先在新主機上把整個網站架起來、用臨時網址驗收完,最後才動 DNS。直接切過去再邊修邊上線,等於拿正式流量當測試。
Google 對這種不換網址的搬家有一份官方說明,建議的順序也是先複製、先完整測試。它特別提醒:用臨時網址測試時要擋住搜尋引擎,避免臨時網址被收錄,變成和正式網站競爭的重複內容。
驗收不能只是點幾頁看有沒有跑版。要用真的操作:下一筆單、送一次聯絡表單、登入後台、上傳一張圖。這些動作會用到資料庫寫入與檔案權限,而那正是新環境最容易出問題的地方。純瀏覽的頁面通常一次就過,會卡住的都是要寫入的功能。
4. 切換那一段:怎麼不斷線
換主機的斷線風險幾乎都集中在改 DNS 的那幾個小時。原因是 DNS 有快取:各地的網路拿到你的紀錄後,會照設定的時間留著不重新查,所以切換之後有些人看到新主機,有些人還連到舊的。
兩個動作能把這段時間壓到最短。第一,提前一週把 DNS 紀錄裡那個「多久重新查一次」的數值調小,Google 那份說明也建議這麼做,正式切換後大家會很快看到新位置。第二,切換之後不要馬上關掉舊主機。
什麼時候可以關掉舊主機?Google 的建議是看紀錄,等舊主機那邊的流量歸零再關。實務上多留一兩週比較安心,一個月的租金遠比重新搬一次便宜。這段期間不要在舊主機上改東西,它只是備胎。
5. 搬完要驗什麼
驗收要有清單,切換當天走完一次、隔天再走一次。有些項目要等一天才看得出來,例如排程。
| 要驗的項目 | 怎麼驗 | 沒過通常代表什麼 |
|---|---|---|
| 網站確實在新主機上 | 在新主機的存取紀錄裡看得到自己的瀏覽 | DNS 還沒生效,或紀錄改錯了 |
| 憑證有效 | 用 https 打開,確認網址列沒有警告 | 新主機的憑證沒裝好或沒設自動續期 |
| 信寄得出去 | 實際送一次聯絡表單、觸發一次訂單通知 | 寄信設定沒搬,或新主機還沒被授權代寄 |
| 寫入正常 | 後台上傳一張圖、發一篇測試文章 | 上傳目錄的權限或擁有者不對 |
| 排程有在跑 | 隔天檢查備份檔與報表有沒有產生 | 排程工作沒有跟著搬過來 |
| 搜尋引擎讀得到 | 確認封鎖設定已移除,並看 Search Console 有沒有新錯誤 | 測試期間的封鎖還留著 |
第三列與第五列最常被跳過,因為它們不會在畫面上留下痕跡。網站看起來好好的,訂單通知卻悄悄停了兩週,發現的時候通常是客訴。
6. 最常被漏掉的四件事,以及費用
排程、寄信、憑證、上傳目錄權限,這四件事佔了搬家後問題的絕大多數。排程和憑證前面講過,這裡補另外兩項。
寄信值得多說。很多網站的通知信由主機直接寄出,而收信方會查你的網域有沒有授權這台機器代寄。這套機制叫 SPF,由 RFC 7208 定義,做法是在網域設定裡列出允許代寄的來源。換主機等於換了寄信的機器,名單沒更新,通知信就會被丟進垃圾郵件或直接退回。
上傳目錄權限是搬家後最常見的無聲錯誤。檔案複製過去了,但擁有者或權限跟新主機對不上,結果是後台上傳圖片失敗、或舊圖片顯示不出來。這一項只要上傳一張圖就測得出來,卻最常被跳過。
至於費用,網站搬家的報價差距來自三件事。一是網站複雜度,單純的形象網站和有會員、金流的系統差很多。二是新主機的環境要不要從零建置。三是要不要盡量壓低切換的斷線時間。單純的 WordPress 網站搬到規格相近的主機,多數是一天內的工作。詢價時要問清楚含不含新環境建置與搬完的逐項驗收,那兩段的工時往往比複製檔案多。
什麼時候可以自己來?網站單純、沒有會員與訂單、主機商又提供一鍵搬遷工具的話,自己做完全合理,不必花這筆錢。如果網站有交易、有排程、有串接第三方服務,或你根本不確定原主機上還跑著什麼,那值得找人。重點不在複製檔案,在盤點與驗收。
換主機真正的難度不在搬,在盤點與驗收。搬之前把網域、資料庫、寄信、排程、憑證與第三方限制列成一張清單,搬的時候先在新主機驗收完再動 DNS,搬完隔天再走一次驗收表。照這個順序做,網址不變的搬家幾乎不會影響流量,最多就是切換那幾個小時要挑對時段。
常見問題
- 網站搬家會影響 Google 排名嗎?
- 網址不變的話幾乎不會。搜尋引擎認的是網址,換一台機器不會讓排名重新計算。真正會扣分的是兩種意外。一種是測試期間的封鎖設定忘了移除,導致整站不被收錄。另一種是搬完之後有頁面壞掉、圖片不見、載入變慢。所以驗收比搬本身重要。如果連網址也要換,那是另一回事,要先做好舊網址的轉址對應。
- WordPress 網站搬家自己做得到嗎?
- 單純的網站可以。多數主機商提供一鍵搬遷,也有專門的搬家外掛,把檔案與資料庫一起打包再還原。會卡住的通常是三種情況。網站有會員與訂單的,切換期間的資料會分裂。主機環境版本差太多的,還原之後會有功能壞掉。還有一種是原主機上跑著你不知道的排程與寄信設定。有這幾種情況就值得找人。
- 網站搬家要停機多久?
- 規劃得好可以接近零。做法是先在新主機把網站架好並驗收完,提前把 DNS 紀錄的重新查詢間隔調短,切換之後新舊兩台同時保持可用,等舊主機沒有流量了再關掉。訪客那一端不會看到錯誤畫面。真正要處理的不是停機,是切換那幾個小時裡新舊兩邊都收得到資料,所以有訂單的網站要挑離峰時段或暫停下單。