Contents
wordpress迁移服务器后页面404
最近由于公司的要求,需要将一个网站从原服务器迁移到一个新服务器上。这次就简单的说下网站从一个服务器迁移到另一个服务器的流程及我遇到的问题和如何解决的。
这里说下网站迁移服务器的大概流程
首先,备份
我们要去原服务器上面备份网站源文件以及数据库,备份后导出到本地待用。
第二,新服务器环境搭建
这里建议原服务器用的什么环境,新服务器最好也采用同样的环境,并且版本最好一致,比如,原服务器用的是LNMP,那么新服务器最好同样用LNMP环境,软件版本最好也一致,比如原服务器php用的是7.0,那么新服务器最好也选择7.0,这样能减少因为环境或是软件版本不兼容导致的各种问题。
第三,新服务器上虚拟主机及数据库创建
这个就是在新服务器上创建一个虚拟主机用来存放网站,创建虚拟主机的同时可以把数据库也一同创建了,如果为了省事,可以采用跟原数据库相同的数据库用户名及数据库名和密码,这样最后就不用再修改config文件中的数据库信息了。
第四,导入之前备份的源文件和数据库
将第一步时备份到本地的网站源文件和数据库分别到入到新服务器的虚拟主机和数据库中,如果第三步创建数据库用户名和数据库名以及密码是采用的和原服务器上相同的,则不用修改config配置文件中的数据库信息,如果数据库信息不一致,刚需要修改配置文件,替换为新的数据库信息。
第五,将网站域名解析到新的服务器IP
遇到的问题及解决方法
上面整个流程都很顺利,因为之前也有过迁移的操作,所以这个过程并不陌生,但是这次出现了一个新情况,就是网站迁移完后发现除首页外,其它页面都是404,这个之前没有遇到,所以上网查了一下原因,好多人都说进到wordpress后台设置中,刷新一下固定链接,或者重新保存一下就可以了,我按上面操作了一下,没用,仍然404.
网上又查找了几篇帖子,发现一个和我情况类似的,也是修改固定链接不起作用,最后是通过下面方法解决的
1)首先找到自己lnmp安装的环境wordpress.conf,文件一般在/usr/local/nginx/conf/rewrite/wordpress.conf
检查是否有
location / {
try_files $uri $uri/ /index.php?$args;
}
# Add trailing slash to */wp-admin requests.
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
如没有的话自行添加,有的话不用管。
2)我们需要找到网站的配置文件,/usr/local/nginx/conf/vhost/(你网站名.conf),在root index.html 下一行添加
include rewrite/wordpress.conf; (或者include wordpress.conf; 具体有没有rewrite要看你文件所在的位置)
重启nginx 或 lnmp 网页显示正常.
按照以上方法操作,果然成功了。
注:我用的是LNMP环境,LAMP环境的话操作方法不一样。
更多文章欢迎关注我个人微信公众号“外贸营”