由于種種原因,很多時候站長都需要對網(wǎng)站進行搬家,搬家會經(jīng)常出現(xiàn)這樣或那樣的問題,現(xiàn)在對以往的經(jīng)驗做一個總結(jié),希望對各位站長有所幫助。
網(wǎng)站的空間有獨立與虛擬之分,下面分別介紹兩種空間的搬家方法。
一、獨立主機
網(wǎng)站搬家即數(shù)據(jù)的遷移,搬家前不論獨立還是虛擬主機,網(wǎng)站都需關(guān)閉。數(shù)據(jù)的遷移分為數(shù)據(jù)庫數(shù)據(jù)及程序和附件文件兩部分的的遷移。
數(shù)據(jù)庫的遷移:首先停止老服務(wù)器上的 MySQL。復(fù)制 MySQL 數(shù)據(jù)存放目錄下的數(shù)據(jù)文件,至于 MySQL 的數(shù)據(jù)存放目錄,可以查看 MySQL 配置文件中的 datadir 參數(shù)。(對于 Linux 系統(tǒng)的 MySQL 配置文件一般為 /etc/my.cnf ,Windows 環(huán)境下為 MySQL 安裝目錄路徑的根目錄下的 my.ini 文件。)
將數(shù)據(jù)文件移到新服務(wù)器相對應(yīng)的 MySQL 數(shù)據(jù)存放目錄下,這里注意到的一點就是對于 Linux 系統(tǒng),注意移動數(shù)據(jù)文件之后,將相對應(yīng)的文件屬主改成你的 MySQL 運行賬號。
程序和附件的遷移:將你的老服務(wù)器 WEB 目錄下所有文件移到新服務(wù)器的 WEB 目錄即可。
修改配置文件信息:
1、Discuz! X1.5 的配置文件在 config 目錄下,即 config.global.php 和config.ucenter.php 兩個文件。
2、UCenter 的配置文件在 data 目錄下,即 config.inc.php 文件。
配置文件里記錄的數(shù)據(jù)庫地址、訪問用戶名、密碼都要根據(jù)你的新服務(wù)器的相應(yīng)信息進行修改。同時,如果你的域名發(fā)生變化,要修改配置文件中相應(yīng)的域名信息。
3、由于 UCenter 的后臺存放了各個應(yīng)用的配置信息,所以當你修改完配置文件的信息之后,對應(yīng)的需要去 UCenter 的應(yīng)用管理中,把對應(yīng)的信息(尤其是 IP 和域名)校正為正確的地址。
至此,對于獨立主機用戶的站點快速搬家流程說明完畢。整個流程比較簡單,唯一消耗的主要在于時間,當然這需要根據(jù)你的站點和傳輸速度而定。
二、虛擬主機
虛擬主機的數(shù)據(jù)庫數(shù)據(jù)一般站長是直接拿不到的,最好是通過網(wǎng)站后臺備份數(shù)據(jù)庫數(shù)據(jù),然后到新的空間中恢復(fù)數(shù)據(jù)庫的備份就可以了,但新空間要全新安裝一遍程序。
1、備份:
網(wǎng)站的數(shù)據(jù)部分,可以在 UCenter 后臺直接進行備份,
登錄 UCenter 后臺→數(shù)據(jù)備份
在 UCenter 下可以只備份 UCenter 的數(shù)據(jù),也可以備份所有應(yīng)用或者部分應(yīng)用的數(shù)據(jù),這里我們選擇備份所有應(yīng)用的數(shù)據(jù)。提交后等待備份完成,可以到數(shù)據(jù)備份記錄里查看。這里需要注意的是,在 UCenter 備份的整站數(shù)據(jù)有兩部分,分別存放在 UCenter 和 Discuz! X 里面各一部分:UCenter 是在/uc_server/data/backup_日期_ABCDEf(ABCDEF是備份數(shù)據(jù)名稱范例);Discuz! X 是在網(wǎng)站根目錄 /data/backup_日期_ABCDEf(ABCDEF是備份數(shù)據(jù)名稱范例)。很多人的問題就出現(xiàn)在這里,上傳數(shù)據(jù)庫備份文件的時候,千萬要注意這兩個備份文件要放到正確的位置,避免數(shù)據(jù)不完整丟失,造成會員,帖子等數(shù)據(jù)出錯。
備份程序文件相對于虛擬主機來說,就要特別注意 UCenter 和 Discuz! X 的配置文件和存在 UCenter 中的頭像等的備份。
備份 UCenter 的所有程序文件,其中要注意 data 目錄以及其下的 config.inc.php 文件一定不能丟失,data 目錄下的 backup 目錄下存放的是剛才備份的數(shù)據(jù),avatar 目錄下存放的是所有會員的頭像圖片,所以這些文件一定不能丟失。
備份論壇的所有程序文件,其中要注意 data/attachment 附件目錄以及 config 目錄下的 config.global.php和 config.ucenter.php 文件一定不能丟失。如果有模板風(fēng)格的,也要單獨備份后下載,待新空間安裝完畢,再重新上傳啟用;之前網(wǎng)站有通過DIY的頁面,這時要導(dǎo)出備份,新空間裝完再導(dǎo)入即可。
還有一點很重要:確保搬入服務(wù)器和原服務(wù)器的數(shù)據(jù)庫版本和編碼一致,如果編碼一不致可能會出現(xiàn)亂碼的情況。
2、安裝新程序及附件、頭像等的上傳
全新安裝論壇,安裝的時候 Discuz! X 及 UCenter 數(shù)據(jù)庫名以及表名前綴一定要和原來的一致;
程序頭、尾(如果有改動)、diy數(shù)據(jù)都要重新覆蓋;下載到本地的附件、頭像等數(shù)據(jù)上傳到新空間正確的位置;偽靜態(tài)規(guī)則文件、模板文件及Logo網(wǎng)站標識等重新上傳到新空間正確位置。
3、恢復(fù)數(shù)據(jù)庫
首先登錄到 UCenter 后臺,檢查各應(yīng)用是否通信成功,然后用創(chuàng)始人登錄:
UCenter 后臺→數(shù)據(jù)備份→數(shù)據(jù)備份記錄→數(shù)據(jù)恢復(fù)→(找到相應(yīng)的備份,如果備份顯示不存在,那就說明備份文件上傳的位置錯了?。c擊“詳情”→選擇備份的數(shù)據(jù)→提交。
4、后續(xù)操作
由于 UCenter 以及 Discuz! X 的 URL 路徑和之前比發(fā)生了變化,所以要在 UCenter 后臺修改為正確的路徑。
UCenter 管理后臺→應(yīng)用管理→編輯
Discuz! X 的 URL 路徑。檢查應(yīng)用的 UCenter 配置信息,UCenter 管理后臺→應(yīng)用管理→編輯論壇的應(yīng)用,找到應(yīng)用的 UCenter 配置信息,復(fù)制其中的全部內(nèi)容,分別覆蓋到論壇的 config 文件最后的關(guān)于 UCenter 的配置信息部分。更新 UCenter及論壇的緩存后,網(wǎng)站搬家基本就好了,剩下的偽靜態(tài)等問題,要確認服務(wù)器設(shè)置好 rewrite 后,在設(shè)置開啟。
--------------------------------------UPDATE----------------------------------------------------
更新:
搬家后偽靜態(tài)的設(shè)置可參考faq.comsenz.com中的教程,下面是具體鏈接。
另外,有關(guān)虛擬機的偽靜態(tài)設(shè)置,本論壇也有相關(guān)教程,在這里把鏈接集中起來。