在入場的網(wǎng)站維護(hù)中,由于各種不同的原因,我們需要更換服務(wù)器或者域名,我總結(jié)了一些經(jīng)典實(shí)用的方法,希望能幫助到大家。
WP 搬家簡單教程
0. 從舊主機(jī)上,備份站點(diǎn)根目錄下的 wp-config.php 文件。
1. (二選一)從舊主機(jī)上,備份(導(dǎo)出)站點(diǎn)所使用的 MySQL 數(shù)據(jù)庫,一般以 .sql 或 .sql.gz 結(jié)尾格式。
2. (二選一)從舊主機(jī)上,打包備份全站目錄,或僅打包備份 wp-content 下的“uploads、avatar、themes、plugins”目錄。
3. 在新主機(jī)上,建立新的站點(diǎn)域名目錄和數(shù)據(jù)庫。
4. 在新主機(jī)上,將備份的 .sql 數(shù)據(jù)庫文件導(dǎo)入新建的數(shù)據(jù)庫。
5. (二選一)在新主機(jī)上,如已全站打包備份,則將打包備份的全站文件解壓縮至站點(diǎn)目錄。
6. (二選一)在新主機(jī)上,如僅打包備份了 wp-content 下的部分內(nèi)容,則下載最新版 WP?https://w.org/latest.zip?并解壓縮,和將已備份壓縮包解壓縮至 wp-content 目錄下。
7. 使用已備份的 wp-config.php 文件覆蓋站點(diǎn)根目錄下的同名文件,完成搬家。
經(jīng)常玩?WordPress,難免會遇到 WordPress?換服務(wù)器主機(jī)搬家的事情,或者主機(jī)和域名一起更換。蟲子上個月也做了一次搬家,考慮到網(wǎng)上已有的?WordPress 搬家教程不完整,我來寫一個相對完整一些的。
- 原文來源:詳情

1.準(zhǔn)備工作
1.1?域名解析
把域名的 DNS 解析到新的服務(wù)器 IP 地址。
※DNS 解析教程:https://wangejiba.com/128.html
1.2?主機(jī)設(shè)置
在新主機(jī)搭建好網(wǎng)站環(huán)境,創(chuàng)建新的虛擬主機(jī)(但是不要傳 WordPress 網(wǎng)站程序)
※搭建網(wǎng)站環(huán)境:https://wangejiba.com/104.html
※創(chuàng)建虛擬主機(jī):https://wangejiba.com/79.html
2.文件轉(zhuǎn)移
文件轉(zhuǎn)移有兩種方式,一種是從舊服務(wù)器把文件下載到本地,再從本地上傳的新服務(wù)器,另一種是通過 SCP 命令讓兩臺服務(wù)器直接遠(yuǎn)程復(fù)制文件,如果你新服務(wù)器和舊服務(wù)器都是單獨(dú)的 VPS 主機(jī),建議使用第二種方法。
2.1?本地轉(zhuǎn)移
FTP 把根目錄下所有文件下載下來,再把所有下下來的所有文件(包括 wordpree 文件及你所用的主題文件)通過 FTP 上傳至新服務(wù)器目錄中
2.2?SCP 命令
以 LNMP 搭建的網(wǎng)站環(huán)境為例,我將 WordPress 從 A 服務(wù)器轉(zhuǎn)移到 B 服務(wù)器,同時把原域名 fangeqiang.com 更換為新域名 fangeqiang.xyz (如不換域名,那么 A、B 服務(wù)器的文件目錄不用更改,保持一致即可)
打開 Xshell 登陸 A 服務(wù)器,執(zhí)行命令如下:
scp -P 22222 -r /home/wwwroot/fangeqiang.com/ root@112.112.112.112:/home/wwwroot/fangeqiang.xyz/
當(dāng)你操作時,需要根據(jù)自己的情況,替換如下信息
22222:B 服務(wù)器端口
/home/wwwroot/fangeqiang.com/:A 服務(wù)器 WordPress 的文件目錄
112.112.112.112:B 服務(wù)器 IP 地址
/home/wwwroot/fangeqiang.xyz/:B 服務(wù)器 WordPress 的文件目錄
3.轉(zhuǎn)移數(shù)據(jù)庫
3.1?導(dǎo)出數(shù)據(jù)庫
打開 A 網(wǎng)站的數(shù)據(jù)庫,并導(dǎo)出

3.2?導(dǎo)入數(shù)據(jù)庫
打開 B 網(wǎng)站的數(shù)據(jù)庫,導(dǎo)入 A 網(wǎng)站數(shù)據(jù)庫文件

4.修改數(shù)據(jù)庫
如果 WordPress 只換服務(wù)器,并不換域名,可以跳過這一步。
4.1?搜索
搜索 A 網(wǎng)站域名,查看含有 A 網(wǎng)站域名的表和字段。

可以看到多個表中含有 A 網(wǎng)站域名,先點(diǎn)擊第一個含有 A 網(wǎng)站域名的表右側(cè)的『瀏覽』按鈕

進(jìn)入表后,確定 A 網(wǎng)站域名所在的字段

4.2?替換
執(zhí)行替換命令,把所有表中的 A 網(wǎng)站域名替換為 B 網(wǎng)站域名
UPDATE AAAAAA SET BBBBBB = REPLACE(BBBBBB,’舊地址’,’新地址’);

執(zhí)行替換命令前需根據(jù)自己的情況對以下內(nèi)容進(jìn)行修改
AAAAAA:表名
BBBBBB:該表中含有 A 網(wǎng)站域名的字段名字
舊地址:舊網(wǎng)站域名
新地址:新網(wǎng)站域名
按照以上范例,依次對所有含有 A 網(wǎng)站域名的表進(jìn)行域名替換的修改。
例如
將網(wǎng)站所有文章中的,所有的網(wǎng)址,從cdn.npc.ink
切換成npc.ink
UPDATE wp_posts SET post_content = REPLACE( post_content, 'cdn.npc.ink', 'cdn.npc.ink' )
5.修改 wp-config.php

打開新網(wǎng)站根目錄,找到 wp-config.php,修改如下內(nèi)容
- define(‘DB_NAME’, ‘wp3′);//這里輸入新數(shù)據(jù)庫名稱
- define(‘DB_USER’, ‘root’);//這里輸入數(shù)據(jù)庫用戶名
- define(‘DB_PASSWORD’, ’123′);//這里是輸入數(shù)據(jù)庫密碼
- define(‘DB_HOST’, ‘localhost’);//這里是數(shù)據(jù)庫服務(wù)器,一般都是 localhost
結(jié)束
做完以上步驟后,在瀏覽器打開新域名,一般就可以正常訪問了。
文章來源:https://wangejiba.com/1577.html
上述環(huán)境為:nginx