四海為家
用WordPress架站的好處就是你喜歡放哪裡就可以放哪裡,甚至是連網址(域名)一起換都很簡單,這也就是自架站的魅力所在,甚至有所謂的「免空殺手」專門在各家免費主機空間游走。
而高登並不是很推免費空間的,因為既然是不花錢那下場跟放在免費的BSP應該都差不多,甚至於無預警被關站都很有可能,但是不管你是免費空間還是付費主機,搬家的過程其實都差不多的,但是看到許多人搬家之後就會多一篇「Hello World」的文章出來實在是很奇怪,因為搬家這樣子搬就不對了!
備份舊主機的資料
搬家的意思就是把舊主機的資料包括檔案和資料庫搬到新主機空間,所以你在搬家之前一定要確定舊主機裡面的資料都已經備份出來了,現在就讓我們來看看如何搬出舊主機的資料。
備份檔案資料
雖然在cPanel後台的「Files」有「Backups」這個功能,但是這個功能並不適用於不同主機之間的搬家,所以主機的檔案還是乖乖的用FTP程式來備份吧。
請你用FTP程式將所有「主機根目錄」裡面的檔案下載到本機硬碟,要注意到「主機根目錄」一般都不是「FTP根目錄」,兩者不要搞混了,以cPanel來就是「public_html」,Plesk的話是「httpdocs」,至於其他的管理後台程式就看主機商給你的資料了。
備份MySQL資料庫
WordPress網站的組成除了上述的檔案之外,另一個就是MySQL資料庫,而要備份SQL資料庫則是要用主機管理後台的phpMyAdmin來作,雖然cPanel後台的Backups那邊也有備份資料庫的選項,但是那是給同一台主機的備份及回存用的,換了一台主機或是主機空間,那SQL資料庫的名稱、使用者這些都會不一樣,所以是不能用那裡回存的。
一樣在cPanel管理後台找到「Databases」這一項裡面的「phpMyAdmin」:
進入phpMyAdmin之後如果你有好幾個資料庫,請選取WordPress所用的資料庫,然後按上面的「輸出Export」來匯出資料庫。
接下匯出選項這裡選「全選」再勾選「下載儲存」然後按「執行」。
將.sql資料庫檔案存至本機磁碟備用。
新家的準備工作
接下來在你要搬去的新主機空間要先作一些準備動作:
一.DNS更新:
如果是原網址不動的搬家,那就要將你的DNS主機指向新的主機,然後到新主機空間新增這個網址的帳號,如果是新買的就設為主帳號,或者也可以設成「附加網域Addon Domain」(這一項就是國外主機的特點了),但是不是用「寄放網域Parked Domain」喔,那是暫時逃難用的,我會另外在專門談主機的那一站再發文詳細說明。
還有DNS的更新是要時間的,像這一次高登工作室的搬家,有的ISP的DNS主機花了三天的時間才更新完成,所以在這個時候可能有些人會連到你的舊主機,有的人會連到你的新主機,因此網站先不要有太多的更新動作,另外這一次好像有兩位讀者留言在舊主機那裡了,所以留言不見了請不要見怪喔!
二.新增資料庫:
一樣在cPanel管理後台的「Databases」找到「MySQL Database Wizard」這一項,再來輸入資料庫名稱、資料使用者名稱及密碼這些資料。
然後在使用者權限這裡勾選「ALL PRIVILEGES」指派所有權限新增一個資料庫,記得要記下新的資料庫的名稱這些資訊(一定會跟原來的不一樣)。
三.更改wp-config.php設定
因為新家跟舊家的SQL設定一定會不一樣(除非你是自己架站才可能設一樣),所以要先把網站檔案裡面的「wp-config.php」拿來改成新主機的設定,要改的地方有:
<code> define('DB_NAME', '新的資料庫名稱'); define('DB_USER', '新的資料庫使用者'); define('DB_PASSWORD', '新的資料庫使用者密碼'); define('DB_HOST', 'localhost'); </code>
最後這一項「DB_HOST」不一定要改,像高登之前試過的免費空間000webhost還有現在用的NetFirms他們都是網站主機跟料資料庫主機不同台,所以這一項就要改。
變更域名(網址)
有時候搬家也順便換個網址,而這一項工程可能很大也可能很簡單,單就以WordPress變更網址這一項來就,最簡單的作法就是一樣在「wp-config.php」裡面加上二列:
<code> define('WP_SITEURL', 'http://新的網址'); define('WP_HOME', 'http://新的網址'); </code>
這兩項就是WordPress後台「設定」裡面的「WordPress網址」和「網誌網址」這兩個設定,改這裡就好了不用像高登之前發的另一篇文那樣去改SQL資料庫,算是最簡單的改法。
如果你的網址有更改,那資料庫檔案就還要動一下手術:
請用Notepad++或是EmEditor之類支援UTF8編碼的編輯程式開啟你下載回來的資料庫.sql檔,用一個全部取代的動作將舊網址改成新網址。
例如你的舊網址是:「abc.com」,新網址是「def.com」,那就下一個「http://abc.com」改為「http://def.com」的指令,然後將資料庫檔案另存為其他檔名,以備稍後的回存之用。
這些準備動作都好了之後就可以開始將檔案及資料庫上傳到新主機了。
上傳至新主機
首先將資料庫倒回新的主機,請一樣由後台的管理程式找到「phpMyAdmin」程式。
選到你剛才新建立的資料庫,裡面應該是空的,請你用「輸入Import」資料庫檔案。
選擇你所備份的資料檔案或是已經更改過的資料庫檔案,然後按「執行」倒回資料庫。
完成後應該像這樣子:
再來把整個網站的檔案上傳到新的主機空間根目錄,這樣子就大功告成了!
注意事項及說明
- 為什麼不用先安裝WordPress程式?因為這樣子就可以運作了,而且保證跟原來網站的功能一模一樣,你新裝一個WordPress然後再來設定一定會有遺漏的。。
- 圖片怎麼辦?如果你是用WordPress後台下傳圖片的,那這樣子是最正確的作法,否則光改圖片網址就改死你。如果是外連圖片的那連改都不用改。
- 還有什麼後續要處理的?有!檔案或目錄及sitemap的屬性要重新檢查一下。。
- 換網址的話那後續的事情就多了,像網站驗證、部落格觀察、FunP哈部落還有部落軌道之類的一些都要重新再來,所以記得一件事:「要申請網址請考慮仔細一點」!因為最近又有人因為要換網址在傷腦筋!
- 不管有沒要搬家,日常的備份一定要作,因為就算是付費的空間還是有出槌的可能,千萬要記得喔!