网站运营过程中,有时因为种种原因需要整站搬家,比如服务器质量问题需要更换或者目前服务器已经不满足网站运营需求等。
搬家原理都大致相同,过程并不复杂,总结分为以下几步:
1.备份网站文件
备份方法有很多总,不详述。只要能把网站文件打包就行。
2.备份网站数据库
同上
3.上传网站备份文件到新服务器
可以通过 FTP 上传,也可以直接在宝塔之类的面板直接上传,然后解压打开
4.导入数据到新服务器
将数据导入新主机数据库中
5.修改 wp-config.php 文件中的 数据库名,数据库用户名,数据库密码,以及主机IP
6.将域名解析到新主机
也可以提前解析过去
这里基本上就完成了,访问域名查看网站运行是否正常
7.如果要使用新的域名,需要更换数据库中旧域名的字段,否则很多页面 404 无法打开
用 sql 语句批量替换旧域名:
UPDATE 表名 SET 字段 = REPLACE(字段,’替换内容’,’替换值’);
/*修改option_value里的站点url和主页地址:*/
UPDATE wp_options SET option_value = REPLACE(option_value, 'http://www.旧域名.com', 'http://www.新域名.com') WHERE option_name = 'home' OR option_name = 'siteurl';
/*更正文章中内部链接及附件的地址:*/
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://www.旧域名.com' , 'http://www.新域名.com');
/*更正wordpress文章默认的永久链接:*/
UPDATE wp_posts SET guid = REPLACE(guid, 'http://www.旧域名.com' ,'http://www.新域名.com');
8.使用插件更换新域名
插件一键替换更省时省力,直接搜索 Better Search Replace 安装,按要求傻瓜式替换即可
常见问题:
(1)访问域名显示 “Error establishing a database connection ” 无法连接数据库
首先检查数据库是否正常运行,可以重启一下数据库
然后检查 wp-config 文件数据库信息是否填写正确,有时候数据库名或者密码多了一个空格很难被发现,但是信息不正确就可能连接不上数据库。
(2)宝塔面板上的网站出现 “ no input file specified ”
在面板打开网站设置,点击网站目录,关闭防跨站攻击,然后重启一下服务器
能正常访问后如果需要可以重新再打开防跨站
暂时写这么多,有什么其他问题可以给我留言,后期加上去