我的一个用 WordPress 制作的小博客,之前一直放在国外主机上,感觉访问速度太慢,所以打算搬到国内主机来。结果搬家过程中出现了一些问题,捣鼓了整整一天,才找到解决的办法,所以稍微整理一下,如果有站长朋友遇到的相同问题,可以帮得上点小忙。
搬家过程:WordPress 整站搬家的教程,网络上有很多,有些文章已经说得很清楚,为了把问题描述清楚,我简要说一下搬家的步骤:
1 、将 WordPress 整个网站文件下载到本地
2 、备份数据库,下载到本地。
3 、把修改后的整站文件上传到新的主机。
4 、导入备份的数据库。
5 、修改根目录下 wp-config.php 里的数据库信息,用户名、密码、服务器地址等.
以下是我搬家过程中遇到的问题和解决的方法。
问题一:后台访问不了,恢复两三个插件又访问不了。
通过上面的搬家步骤以后,网站首页可以正常访问了,但是后台登陆不了,直接就是空白,什么提示也没有。问题出在插件上,网络上大家的解决方法是:通过 FTP,重命名 plugins 文件夹,就可以正常登陆后台了。登陆后台了以后把 plugins 文件夹修改回来,然后再在已安装插件中激活插件。
我遇到的问题是:激活插件过程中,激活了两三个以后,再安装一个,马上整个后台又出现了空白,重命名那个插件以后,又可以正常访问,但是再也安装不了任何一个插件。 WordPress 本来就是靠这些插件来工作的,也不可能不用这些插件。
折腾了半天,才找到原因,原来是这些插件内存占用过多,导致内存不足。
解决方法:增加 WordPress 可用内存。
编辑 wp-config.php 这个文件
找到 define('DB_NAME', 'winestable');
在它之前加上:define(『WP_MEMORY_LIMIT』, 『96M』);
这里,96M 可以写得更大,比如 128M 或者 256M,看自己的主机限制情况,修改了以后,能够正常访问前台和后台就说明可用。
问题二:首页显示正常,栏目页、文章页出现 404 错误。
打开网站,首页显示是正常的,但是栏目页、文章页都显示不了,提示是 404 。出现这个问题的原因是之前的 WordPress 设置了伪静态,固定链接用了自定义的结构。现在搬过来以后,没有重新设置伪静态,所以无法访问。
解决方法:其实不用再设置什么,只需要登陆后台——设置——固定链接,保存更改就可以了。当然主机还要设置伪静态规则,空间伪静态规则,空间商一般都提供的。我用的是电信通的主机,.htaccess 文件规则如下:
# 将 RewriteEngine 模式打开
RewriteEngine On
# 如果程序放在根目录
RewriteBase
# Rewrite 系统规则请勿修改
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^topic-(.+).html$ portal.php?mod=topic&topic=$1&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^forum-(w+)-([0-9]+).html$ forum.php?mod=forumdisplay&fid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+).html$ forum.php?mod=viewthread&tid=$1&extra=page%3D$3&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^group-([0-9]+)-([0-9]+).html$ forum.php?mod=group&fid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^space-(username|uid)-(.+).html$ home.php?mod=space&$1=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^archiver/(fid|tid)-([0-9]+).html$ archiver/index.php?action=$1&value=$2&%1
以上是我在 WordPress 搬家过程中遇到的两个问题,希望对大家有点帮助,尤其是出现启用插件后台登陆空白的情况,这里提醒一下 WordPress 搬家的
朋友们,没搬家之前不要着急删除原来主机上的数据,出现错误了,还可以再回来重新来一遍。