WordPress 網站搬家大地雷:DNS子網域設定





這裡有個超級大地雷...

花了一個周末,搞定部落格從自家Mac Mini便當盒到國外虛擬主機的所有步驟,現在這個部落格看起來似乎搬完了,中間踩到一顆先前沒預期到的超級大地雷,順手記一下所有的流程和心得,也提供一下我被炸到後的處理方法,供給日後有需要的朋友參考。

1. 匯出舊文

原有部落格停止更新,然後進後台匯出舊文。這步一定要先做,不然到第3步時會很慘…

2. 買虛擬主機:

會買 Bluehost 的原因其實只是因為看起來還可以。之前工作上曾經用過Dreamhost,也沒有好到哪去。反正不貴的美國主機大概就是那幾家,各有各的缺點;我這部落格流量也不大,想來不至於爆CPU TIME,白老鼠就當下去了。

用到現在,覺得Bluehost比較明顯的缺點,就是後台速度很慢,從 HiNet 連過去改設定或上傳檔案時都卡卡的;但是用暗黑賤招公司VPN改走美國線路再進後台,速度就很快。到底是Bluehost還是種花電信的問題呢?(茶)

買好虛擬主機,做基本設定,安裝WordPress,這就按下不表了。要玩虛擬主機的人應該都要會這些,也有很多文章或市售圖書教學。

3.  設定DNS

這一步要把原先指定到家裡的子網域改設定到虛擬主機的IP,看似簡單,但是對部落格搬家作業來說,這一步有個超級大地雷,一定要注意。

WordPress後台的一般設定中,有個部落格URL的設定項目。對搬家的人來說,自然要把新主機上的WordPress URL設定成與舊主機完全相同,網友才能用同樣的網址連進新的部落格;但尷尬的是,當DNS改好還沒生效時,新架好的部落格連後台都進不去(因為URL還是導到舊主機IP);當DNS新設定生效時,URL就會馬上指到你的新主機IP,這時新主機雖然可以用了,但想進舊主機WordPress的後台進行舊文匯出等作業時,就會被立即強迫導向到新主機…(意思就是DNS生效前進不了新主機,生效後進不了舊主機)

這個問題對網管高手來說應該不難,也許改一下舊主機上的routing或hosts設定,讓瀏覽器不要跑去新主機的IP就好,但對我這種半吊子的技術苦手來說就比較麻煩,我想絕大多數 的普通部落客大概也不會設這些東西吧。

踩到這個大地雷後該怎麼辦?我的解決方法雖然笨,但還算有效。DNS生效後,先去安裝一個叫做「Maintenance Mode」的擴充套件,將新主機的部落格設定為整修內部暫停營業,把這段時間連進來的客人擋在門外後,然後把DNS改回舊IP。等DNS再度生效後,就進得了舊系統了。這時趕快匯出舊文、複製使用中的擴充套件和布景主題檔案、記錄一下各項設定值,然後把舊WordPress的URL設成另一個沒用過的子網域(例如oldblog)。接著回DNS把部落格子網域的IP指向新主機,順便再新增一個oldblog子網域的A記錄,IP指到舊主機,再把舊主機上的 Apache httpd.conf 加上 oldblog 的 Virtual host 設定,然後重新啟動 Apache。等DNS再度生效後,新舊兩台主機就可以用不同的網址進去了,要是有什麼設定值忘了,還可以進舊的WordPress後台。

由於DNS每次更改都需要一段時間才能生效,所以如果你自信動作夠快,也可以在改好DNS到新主機但還沒生效,還進得了舊主機的有限時間內,快手快腳完成一切備份作業,等網址導到新主機後馬上可以還原設定。但是這段時間有多長,實在很難說,書上都說DNS更新需要24到48小時,我的經驗是半小時之內。所以如果你半小時搞得定這些事,我只能說你真的是快槍俠…

整個搬家過程中最大的地雷就是這顆,剩下的步驟就簡單了。進新部落格把該裝的裝好,該換的換掉,一切搞定後,取消 Maintenance Mode,重新開放營業,整個部落格的搬家作業就告一段落了。

附帶一提,這個流程是使用新舊部落格使用相同網域名稱時用的,如果你的新舊部落格網域名稱不一樣,不用這麼麻煩,但可能要多一個301轉址設定步驟(請搜尋 301 redirect),好讓搜尋引擎找到你舊文的新網址。這部分我就不囉嗦了。



馬上按讚,加入「西瓜的滋味」粉絲團!




Facebook討論板

則FB討論

This entry was posted in internet and tagged , , . Bookmark the permalink.