如何移轉網域

Photo: Silverton Lookout, BC

去年開始步上網站架設的路上,感謝兩位老闆給了我這個機會學習,更感謝有Google和YouTube兩位老師,及許多好心人士的線上教學分享,讓我慢慢地過關,年紀大了,常常記不得學過的東西,不斷地需要回頭看筆記,決定將所學筆記放在這裡,方便自己找得到筆記,如果也能剛好幫到任何人,也算是一種回饋了.希望大家和我一樣快樂學習,享受學習的快樂!

這是我第一個做的網站:LunarFest

LunarFest

時間飛逝,轉眼已過一年了,到了要第二次做這個網站,老闆每年改新版,雖然我建議了只改首頁和當年活動資訊就好,把主辦單位歷年來的資產保留下來,我覺得那些是最有價值的,但是還沒有收到任何回饋之前,不知道我的建議是否會被採納.也希望能把自己所做過的網站都保存下來,我將網站備份到這個網域.

記得去年這時後,要將網站移轉時所遇到的挫折,至今仍記憶猶新,可說是一朝被狗咬,終身怕狗.到今天我仍是對網站移轉網域還是困難重重.就光要移轉這個網站,從昨天到今天,連續做了三次才成功,現在就再複習一次所有步驟吧!

首先,再次複習一下這位老師 (Bjorn / WP Learning Lab) 的教學影片:

這個教學影片教我怎麼土法煉鋼來移轉網站,沒有用任何Plugin,這樣其實更能懂得真正的原理.

1.備份舊網站

A: 在CPanl > File Manager 全選所有files,壓縮到一個.zip檔(我這個舊網站的Host-Media Temple的File Manager沒有下載功能,所以我需要用FTP的方式,這裡FTP我用的是File Zilla,用FTP比File Manager慢很多,要等很久)

B: 在phpMyAdmin裡,全選所有tables,選Quick / SQL,然後Export成一個.sql檔

(有了這兩個.zip和.sql就算是Fully Backup你的網站了)

2. 上傳到新網站

A: 我在新的Host-SiteGround裡開了一個Subdomain來置放這個網站:
– SiteGround > cPanel > Subdomains > 新增新網址 > CREATE
– SiteGround > cPanel > File Manager > 找到新網址的 folder >有個cgi-bin的folder,保留它,確定其他都是空的>Upload Archive.zip > Extract the zip file > Reload

B: 開新的Database 及連新的 Database User
– SiteGround > cPanel > MySQL Dabases
-新增Database:xxxxx_xxxx
-新增User: xxxxx_xxxx
-新增Password:
-Create a user
-連結新 User到新Database
-Grand ALL PRIVILEGES

C: 編輯新網站的wp-config.php檔
– define(‘DB_NAME’, ‘xxxx_xxxx‘);
– define(‘DB_USER’, ‘xxxx_xxxx‘);
– define(‘DB_PASSWORD’, ‘xxxxxxxx‘);
– define(‘DB_HOST’, ‘localhost‘);

D: 在phpMyAdmin,勾選到正確的database: xxxxx_lf2017c,確定裡面是空的後, Import之前的.sql檔

E: 在phpMyAdmin裡,找到–options table改siteurl 和 home
siteurl: change from 舊網址 to 新網址  (double click, change, and save)
-home: change from 舊網址 to 新網址

3. Troubleshooting: 此時應該是完成步驟了,不過還是會有許多出槌的地方.

A: Caching問題:就是出現舊網址,換個browser或是清理cache試試看!

B: 404 Not Found問題:試著將該頁改成Draft,儲存後再Publish一次.問題若還再,到Settings > Permalinks 再重新儲存一次.

C: Images不見了: 安裝Plugin-Better Search Replace   Search舊網址 Replace新網址

雖然我的learning curve總是比較長,但是我不怕花時間學,藉由這樣的整理,讓自己更融會貫通,期待下次我能更進步,感恩有這份學習的喜悅!

All In One WP Migration

All-in-One WP Migration by ServMask