今日,aichwp.com备案已经下来,原先的域名需要替换掉。当前是http访问,未部署证书。简而言之,现在需要通过https进行访问,并且更换为新的域名。请按照如下步骤进行操作,分先后顺序!!!
更换过程以 Debian + Nginx 为例。
操作之前,请全量备份网站,以免操作失败可退回。
证书同步安装,请确认新域名的证书已经申请。证书申请本文不作演示。
第一步,DNS解析那里设置新的域名解析到服务器IP,原来老域名的解析暂时不要暂停或删除。

第二步,安装插件,要批量替换URL。Better Search Replace,可在后台搜索,安装后启用,先不要操作。
第三步,新建证书文件夹。
此处建议将网站的证书放在专用文件夹下并设置权限,/etc/nginx/ssl/你的域名,这样子更清晰,如/etc/nginx/ssl/aichwp.com。没有目录则新建,上传证书文件,然后设定文件夹权限,如下:
# 目录和证书
chown -R root:root /etc/nginx/ssl
chmod 755 /etc/nginx/ssl
chmod 644 /etc/nginx/ssl/aiwpch.com/你的.pem
# 私钥:尽量只允许 root 读
chmod 600 /etc/nginx/ssl/aiwpch.com/你的.key
第四步,修改网站配置文件。
修改网站配置文件 vim /etc/nginx/sites-available/域名.com.conf
server {
listen 80;
listen [::]:80;
server_name 你的域名.com www.你的域名.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name 你的域名.com www.你的域名.com;
root /var/网站实际目录;
index index.php index.html;
ssl_certificate /etc/nginx/ssl/a.com/a.com.pem;
ssl_certificate_key /etc/nginx/ssl/a.com/a.com.key;
access_log /var/log/nginx/wp_access.log;
error_log /var/log/nginx/wp_error.log;
client_max_body_size 128M;
fastcgi_read_timeout 600;
fastcgi_send_timeout 600;
send_timeout 600;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.4-fpm.sock;
}
# 注意这里 php8.4请根据你的实际版本修改,比如php8.3-fpm.sock;
location ~* \.(jpg|jpeg|png|gif|css|js|ico|svg|woff2?)$ {
expires 30d;
access_log off;
}
}
先去后台设置 – 常规 里面,将网站URL更换为你的新的URL。保存提交后,即使报错不用管。

第五步,保存网站配置文件,并重启服务器。
然后保存刚才的nginx网站配置文件,重启你的nginx。
vim的保存退出命令为:光标定位到vim所在的界面,然后按一下键盘的ESC键,输入英文状态下的“:”,然后再输入“wq”,都不包含引号,回车即可,然后输入
systemctl restart nginx;
注意,新域名无法访问请确认服务器是否放行443端口。
第七步,数据库域名替换。
用新域名登录网站,会报一些错误,不要管,进入到后台后,在左侧导航栏工具下找到Better Search Replace,搜索处输入老域名,请包含完整网址,不要忘记 http或https

选中所有表,并且一定要勾选Run as dry run,先运行看是否出现结果。如下图,出现DRY RUN: 24 tables…,55 cells were…则说明没有输入错误,此时可去掉Run as fry run的勾选,开始替换即可。

现在基本替换完毕,可以去掉http/https后再次查找替换,注意如果去掉http/https,则替换的新域名同时也要去掉https。
搜索替换完毕后,开发者模式下,测试网页,查看是否有遗漏之处。插件没有保留的必要,漏网之鱼检查完毕之后,请卸载插件 【Better Search Replace】。
本文可能涉及到的参考教程:修改错乱不知道如何恢复后全量恢复网站数据
