有個維護的discuz論壇空間快要到期了,就想趁有空就搬個家。主要是因為續費太貴,剛好用親戚的身份新買便宜啊。三年之後到期再尋思尋思。想想以前花費那麼多,虧啊!!!
由於用的移動4G上網,而且現在速度真的不穩定,還要熱點給娃的ipad,反正上網是慘不忍睹……
這就逼迫百度解決方案啊。
為了運維方便,購買的阿里雲直接用centos,然後安裝寶塔,省心啊。
阿里雲伺服器有個內網ip,那能不能直接複製過去呢?後來發現,還得一個區的,買的時候沒注意,反正是連不上,用不了。
壓縮資料夾及檔案
.tar.gz常見於unix系統,在ubuntu或macos可以直接解壓。原先用的是Ubuntu,新的伺服器用centos,那就用這個了,先是壓縮:
tar -zcvf bbs.tar.gz bbs.xxx.com # 將bbs.xxx.com資料夾和其下所有檔案(夾)壓縮成一個檔案bbs.tar.gz
壓縮幾個G的論壇還是挺快的,壓縮率大概在80%。
ls -hl 檢視當前資料夾目錄檔案大小
du -h 檢視當前總大小
解壓tar.gz檔案
將bbs.tar.gz壓縮檔案解壓到bbs資料夾中
tar -C bbs -zxvf bbs.tar.gz # 解壓到目標路徑
將bbs.tar.gz傳到新伺服器
ubuntu和centos下可以用scp將檔案從一個伺服器傳遞到另一個伺服器,還是很方便的。使用rsync斷點續傳,那不是更好麼?
rsync -rP --rsh=ssh bbs.tar.gz root@192.168.1.11:/www/wwwroot/bbs.tar.gz
就是把當前資料夾中的檔案bbs.tar.gz傳到伺服器192.168.1.11中的www/wwwroot中,並命名為bbs.tar.gz。
如果直接在終端中輸入命令,當關閉當前終端視窗,那麼該命令也會中止了。
幸好有screen命令。Ubuntu就用apt-get install screen安裝,centos就用yum install screen安裝。
screen //先進入screen視窗
rsync -rP --rsh=ssh bbs.tar.gz root@192.168.1.11:/www/wwwroot/bbs.tar.gz //輸入各種命令,需要輸入遠端登入密碼
ctrl+a+d //退出當前screen視窗
當退出screen 視窗後,就可以關閉終端了,該命令仍在伺服器中執行在。
screen -ls //檢視所有視窗
screen -r // 進入screen視窗,進入第一個,多個需要加序號
差不多傳送一晚上幾個小時後,就能完成了,然後就是進入新伺服器,定位/www/wwwroot並解壓檔案bbs.tar.gz。解壓速度也非常快的。
安裝新的discuz
從官網下載最新的discuz程式,壓縮upload資料夾,新伺服器安裝好寶塔,環境除了mysql選擇5.7,其他都選最新的版本。新建網站,上傳upload.rar,解壓安裝最新的discuz論壇。
還原恢復資料
將解壓後的bbs論壇資料夾中的 data資料夾,templates資料夾,和uc_server/data/avatar資料夾複製到對應的位置,用寶塔複製非常方便,也快。萬一搞錯了,刪除網站,重新建一個。我發現刪除網站幾乎是秒刪。
data資料夾裡面有原先備份好的資料庫,這個要在原先的論壇裡備份好。模板如果沒有修改不需要複製。會員頭像是我摸索發現的,這個地方折騰了好一會兒,浪費不少時間。
登入後臺,恢復資料庫,就是先刪除 /data/restore.lock檔案,再恢復資料庫。
恢復資料庫的時候,因為備份的檔案較多,網速慢,很容易掛了,我是反覆恢復資料庫的,直到出現上面的圖片才算恢復成功,否則就重複一下吧,這個有點花時間。
如果發現discuz論壇除了首頁,其他靜態頁都是404打不開,說明偽靜態出錯了,需要在寶塔裡新增偽靜態,注意是discuz3的版本。
如果使用寶塔設定ssl加密,原來寶塔只給6個月,現在是一年的了,這個非常方便啊,點選就申請好了,直接部署,還可以強制ssl,不用自己寫跳轉規則,爽歪歪啊。
這個需要設定一下,否則頭像顯示不了。如果頭像是x,說明uc_center訪問連結錯了,需要使用 https://xxx.com/uc_server,注意是https。
如果所有頭像都是預設的頭像,說明uc_server/data/avatar中的頭像沒有複製過來,那就複製一下唄。
完工。
本作品採用《CC 協議》,轉載必須註明作者和本文連結