首先不是我的日志搬家,我的日志还是使用Blogspot。
其实是我公司所属的一个子站,本来挂在主站的服务器上,因为怕子站的访问量会增大而影响到主站,所以要搬到别的服务器上。子站使用Wordpress2.7.1,之前Google了一下别人是怎么做的,有的写的还挺麻烦。但是觉得这个好像挺简单的,所以没有细读,反正就算出了问题还可以从来,等装好了再转DNS就成了。总的来讲这次搬家还是挺顺利,当然也碰到一点问题。下面是步骤,希望对某些人有帮助。
1. 申请空间 (市场部的同事给帮忙做了, 给了我FTP的信息)
2. 把Wordpress文档目录下的文件从当前服务器上拷的本地文件夹(我把文件夹命名为WP,里面含有wp-admin、wp-content, 等等),用的也是FTP(Filezilla)。
3. 使用Filezilla,把WP里的文件上传到新空间的public目录里。(注意:你空间的目录可能有不同的命名)
4. 用phpMyAdmin,把Wordpress的数据库导出(Export), 我用的默认设置,唯一修改的保存文件为'gzipped' (文件名:wordpress.sql.gz)。(如图)
5. 登入新空间的phpMyAdmin,导入(Import), 用的默认设置,选本地文件:wordpress.sql.gz,导入即可。
6. 在旧的wp-config.php文件里更新数据库信息。(这个是老生常谈了,估计大家都知道)
7. 在没挂上任何域名前,我们租的空间提供预览,输入预览网址,结果出现空白页。但很快就发现了原因,原来文档根目录下有个index.html文件,是开通空间的时候用来测试的,估计这个空间设置了index.html 优先于index.php,而运行index.php时,wordpress把转到 “/”下,出了问题。把index.html重命名为index-bk.html后,搞定!
8. 接下来,发现主页导航有问题:CSS样式没了,可是查了一下发现CSS文件没有丢失。由于无法登入(ssh)服务器查看错误信息,我在index.php文件加入了下面代码,想看看主页运行时有没有报错。
<?php
error_reporting(E_ALL);
ini_set('display_errors', true);
上传新文件,打开网页结果发现了几个warning信息:
Warning: Cannot modify header information - headers already sent by (output started at ../public/wp-config.php:1) in /home/username/public_html/wp-includes/pluggable.php on line 676
Cannot send session cache limiter - headers already sent (output started at ../public/wp-config.php:1)
上网GOOGLE一下,找到挺多相关问答。问题出在<?php前 或者?>后的空格,也许你用文本编辑器打开看不到空格,注意保存的时候,选择UTF-8 No BOM。另外我发现wp-admin页面打开后也是空白一片,原因相似,只是出现在不同的文件上,我的出在theme文件的function.php里,只要用文本编辑器打开该文件,把多余的空格删除了,再存为UTF-8 NO BOM就可以了。(如下图)
我觉得编码和FTP上传经常会带来一些莫名其妙的问题,搞不懂为什么在原来的服务器上没有这些问题。
9. 最后到域名供应商那里,把DNS修改了(市场部的同事做的),还挺快的半个小时后就生效了。
注意: 上述记录,可能只对我的例子生效,仅供参考,如有问题,欢迎留言。
标签: 博客, 编程开发