我的一个用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搬家的
朋友们,没搬家之前不要着急删除原来主机上的数据,出现错误了,还可以再回来重新来一遍。
本文由酒桌Blog原创,转载请保留链接http://www.winestable.com/以便遇到同样问题的朋友看演示网站时用到。