你有想要遷移的網站嗎?不論是換主機商,還是換網域,就算你跟我一樣不是工程師,甚至不懂程式語言,你也可以自己做到「 網站搬家 」這件事喔!
之前我也花錢請人幫我把網站搬家過,後來再爬文自己試著搬家也失敗過,不過最後有成功啦(感動)!所以來跟大家分享 網站搬家 的步驟。
如果你還沒有建立網站,甚至對架站還沒有了解的話,可以先看一些基礎入門的文章:
.新手架網站:虛擬主機、網域名稱、SSL安全憑證一次搞懂!
.WordPress網站架設、WordPress.com免費擁有自己的網站
備份是最重要的
想要對網站有任何的更動時,一定要記得先!備!份!萬一在之後移動資料的過程中,不幸出現錯誤,至少還有原本的備份檔案,足以還原到之前的樣子。
備份的時候也要注意!除了備份「資料庫」,還需要備份「文件檔案」。就像是你搬家,除了換地址,家裡面的所有東西也要跟著搬對吧~所以這兩個都是不可或缺的!
這邊ㄓㄓ會比較推薦使用網易資訊的虛擬主機商,因為有75天的資料備份,又是台灣的公司可以很放心的溝通,對剛嘗試的新手來說是很不錯的選擇,詳細介紹也可以到文章看:虛擬主機推薦 新手架站 免費試用 網易資訊。
當你現在的所有資料都在虛擬主機裡面,即使你的虛擬主機商有提供備份服務,但是若有一天你的主機商遇到意外,導致資料毀損或網站癱瘓,那主機商那邊有再多的備份檔案,也都無法使用啦!
雖然說這個狀況真的是微乎其微,可能跟被雷劈到的機率一樣低,但是隨著科技進步和網路的快速發展,誰知道呢?有些主機商就因為駭客被癱瘓了好幾天,那你的網站也會跟著癱瘓好幾天。
偶爾將資料備份到你的電腦裡,或是硬碟,將風險分散也是為自己的網站多加一份保險的概念。
備份步驟教學
這邊會先講「備份資料到電腦裡的步驟」,也就是所謂的「手動備份」。
1|備份文件檔
進到你的cPanel後台,選擇「檔案管理員」。
1-1|將檔案壓縮
選擇你要備份的資料夾,把裡面所有檔案選起來接著按「壓縮」,選「ZIP封存」。原本的檔案會保持原樣,只是多了一個新的壓縮檔。
這裡將檔案壓縮後,就能直接選一個壓縮檔下載,速度可以快很多。才不用再開FTP讓電腦一個一個檔案慢慢傳,跑幾千幾萬個檔案要等超久!
2|備份資料庫
點擊「phpmy管理」,備份你的資料庫~
2-1|匯出資料庫
在左側點選你要備份的資料庫,接著選「匯出」,在按執行就完成了!就會得到一個.sql結尾的檔案。一般沒有特殊要求的話,都是選擇「快速 – 僅顯示必要的選項」就好~
就這樣,你的備份就完成啦~~超快又超簡單的吧!
補充|FTP備份文件檔案
除了從cPanel下載,你也可以使用FTP,將虛擬主機的文件檔案下載到電腦裡~不過一個一個慢慢傳真的會比較耗時,建議可以先在cPanel先把檔案壓縮比較快喔!
網站搬家 步驟
剛剛的備份檔已經完成之後,就可以準備將網站搬家啦!ㄓㄓ會以OpenCart搬家做示範介紹喔!
延伸閱讀:
.OpenCart購物網站 新手入門 安裝前準備
.OpenCart購物網站 自己架設 安裝教學
|網站搬家 類型
在同個虛擬主機內
只是換網址
換到不同的虛擬主機
網址沒有更換
換到不同的虛擬主機
也換了網址
搬家的主要幾個類型為這三種,不過大部分的網路搬家都大同小異,只要照著做就沒問題了~就算你是新手也能很輕鬆地完成!
1|網站搬家 的新位置確認
若有更換網址和虛擬主機的部分,務必先確認好新網址與新的虛擬主機是否已完成開通了喔!還有要確認網站要搬到哪個位置?資料夾在哪裡有找到嗎?
除了文件檔案位置要確認,還有一個步驟不能漏掉喔!就是~~~你需要建立一個新的資料庫!(延伸閱讀:OpenCart資料庫建立教學)
2|複製檔案並修改
先從剛剛的備份檔裡面,將你要搬家的網站資料夾找出來,並且複製一份作為更改使用!接著我們要來修改一些檔案~~
▲首先是將「.well-known」資料夾刪除,這是原本網站的SSL憑證資料夾,不用跟著搬家過去。
▲在資料夾裡面會有兩個config.php檔案。一個在最外層,一個在admin資料夾內。這兩個都要修改,裡面的網域和資料夾名稱都是舊的,你要改成新的正確名稱。
▲輸入新的網址時,要注意網站有沒有SSL憑證,http後面是否要加s?還有網址有沒有www也要注意喔!!
最外層的config.php,要改網域和資料夾名稱
// HTTP
define(‘HTTP_SERVER’, ‘http(s)://你的網域/’);
// HTTPS
define(‘HTTPS_SERVER’, ‘http(s)://你的網域/’);
// DIR
define(‘DIR_APPLICATION’, ‘/home/你的cPanel用戶名稱/public_html/資料夾名稱/catalog/’);
define(‘DIR_SYSTEM’, ‘/home/你的cPanel用戶名稱/public_html/資料夾名稱/system/’);
define(‘DIR_IMAGE’, ‘/home/你的cPanel用戶名稱/public_html/資料夾名稱/image/’);
define(‘DIR_STORAGE’, ‘/home/你的cPanel用戶名稱/public_html/資料夾名稱/storage/’);
define(‘DIR_LANGUAGE’, DIR_APPLICATION . ‘language/’);
define(‘DIR_TEMPLATE’, DIR_APPLICATION . ‘view/theme/’);
define(‘DIR_CONFIG’, DIR_SYSTEM . ‘config/’);
define(‘DIR_CACHE’, DIR_STORAGE . ‘cache/’);
define(‘DIR_DOWNLOAD’, DIR_STORAGE . ‘download/’);
define(‘DIR_LOGS’, DIR_STORAGE . ‘logs/’);
define(‘DIR_MODIFICATION’, DIR_STORAGE . ‘modification/’);
define(‘DIR_SESSION’, DIR_STORAGE . ‘session/’);
define(‘DIR_UPLOAD’, DIR_STORAGE . ‘upload/’);
// DB
define(‘DB_DRIVER’, ‘這裡不用改’);
define(‘DB_HOSTNAME’, ‘這裡不用改’);
define(‘DB_USERNAME’, ‘資料庫使用者名稱‘);
define(‘DB_PASSWORD’, ‘資料庫使用者密碼‘);
define(‘DB_DATABASE’, ‘資料庫名稱‘);
define(‘DB_PORT’, ‘這裡不用改’);
define(‘DB_PREFIX’, ‘這裡不用改’);
// HTTP
define(‘HTTP_SERVER’, ‘http(s)://你的網域/’);
define(‘HTTP_CATALOG’, ‘http(s)://你的網域/’);
// HTTPS
define(‘HTTPS_SERVER’, ‘http (注意有沒有s) ://你的網域/admin/’);
define(‘HTTPS_CATALOG’, ‘http (注意有沒有s) ://你的網域/’);
// DIR
define(‘DIR_APPLICATION’, ‘/home/你的cPanel用戶名稱/public_html/資料夾名稱/admin/’);
define(‘DIR_SYSTEM’, ‘/home/你的cPanel用戶名稱/public_html/資料夾名稱/system/’);
define(‘DIR_IMAGE’, ‘/home/你的cPanel用戶名稱/public_html/資料夾名稱/image/’);
define(‘DIR_STORAGE’, ‘/home/你的cPanel用戶名稱/public_html/資料夾名稱/storage/’);
define(‘DIR_CATALOG’, ‘/home/你的cPanel用戶名稱/public_html/資料夾名稱/catalog/’);
define(‘DIR_LANGUAGE’, DIR_APPLICATION . ‘language/’);
define(‘DIR_TEMPLATE’, DIR_APPLICATION . ‘view/template/’);
define(‘DIR_CONFIG’, DIR_SYSTEM . ‘config/’);
define(‘DIR_CACHE’, DIR_STORAGE . ‘cache/’);
define(‘DIR_DOWNLOAD’, DIR_STORAGE . ‘download/’);
define(‘DIR_LOGS’, DIR_STORAGE . ‘logs/’);
define(‘DIR_MODIFICATION’, DIR_STORAGE . ‘modification/’);
define(‘DIR_SESSION’, DIR_STORAGE . ‘session/’);
define(‘DIR_UPLOAD’, DIR_STORAGE . ‘upload/’);
// DB
define(‘DB_DRIVER’, ‘mysqli’);
define(‘DB_HOSTNAME’, ‘localhost’);
define(‘DB_USERNAME’, ‘資料庫使用者名稱‘);
define(‘DB_PASSWORD’, ‘資料庫使用者密碼‘);
define(‘DB_DATABASE’, ‘資料庫名稱‘);
define(‘DB_PORT’, ‘3306’);
define(‘DB_PREFIX’, ‘oc_’);
// OpenCart API
define(‘OPENCART_SERVER’, ‘https://www.opencart.com/’);
這兩個config.php都修改好之後,就把這整個資料夾內的檔案都壓縮成一個檔案。
3|將壓縮檔上傳至新位置
把剛剛修改好的檔案,全部壓縮成一個Zip檔,接著上傳到網站的新位置。從cPanel或FTP上傳都可以~上傳完成之後就解壓縮,確認好解壓縮後的檔案都在你要搬到的位置,就可以進行下一步啦!
4|匯入資料庫檔案
之前舊網站匯出的資料庫檔案,現在到新的資料庫匯入剛剛的檔案就好啦~~!搬家就完成了!
⚠注意|一個網域只能一個裝Opencart
假如你是在同個網域內移動OpenCart網站,那就必須先將舊的備份到電腦裡,把網域內的舊資料夾+舊資料庫刪除乾淨,這樣新位置的OpenCart網站才能正常運作喔!
介紹就到這邊,謝謝看完的你們啊希望這篇文章能夠幫助到大家~~也歡迎小額支持本文內容,即使是$10對我來說也是一個很大的鼓勵!謝謝你們
1⃣我的街口帳戶(機構代碼為396),帳號是901263434,也可以直接點我支持此篇文章哦!
2⃣透過藍新金流平台,點我前往支持此篇文章!(沒有街口帳戶也可以用這個平台~)
因為之前什麼都不懂的我,在網路上受到很多熱心人的幫忙,讓我完成自己架網站、自己找裝修、自己改造家具等等…也希望我的文章分享,能為正在感到困惑的人,帶來一點新的方向😇