漫谈WordPress安装、迁移

在N年的空间迁移和颠簸中,算是总结出来一些小经验,也算是给WP新手的一些建议,
我这里不会告诉你怎么做,只会告诉你为什么,仅供参考。

安装

第一点,wp-config.php文件

话说,我不知道很多初学者在哪里看来的所谓“教程”,里面有一点就是要求安装者编辑wp-config-sample.php文件,手动写入数据库信息,然后另存为wp-config.php。

怎么说呢,本身这样的建议,或者说要求是没错的,但是该教程的作者似乎忘记了,国内普遍是使用Windows(R),而Win默认的编辑器叫“记事本”,而记事本默认的编码是ANSI且对UTF8支持不良,所以,这就错了。

而很多WP初学者又极少有编码的概念,直接编辑了,然后就直接保存了。
这样的话,PHP基本会有一个header output的报错,意思就说说文件头前面有内容,我知道事实上在记事本里面看来是没有的。山河一片大好嘛,不过别忘了,这是ANSI和UTF8的战争。

所以,如果身为初学者的你,必须执意要自行修改wp-config.php文件,可以,但是请用一个加强版的“记事本”,我个人喜欢EditPlus,当然,还有更多的选择,不过你必须忘记你的“记事本”和“Office Word”这些弱智的东西。

说点题外话,我个人还是喜欢记事本的,即使它比较弱智,不过很多场合轻便的记事本还是合用的。

事实上,我认为你除了上传,不必修改任何PHP文件的内容,一个字母都不要动,
那么,不编辑的情况下怎么安装WP呢?OK,下一点。

第二点,简单安装WordPress

关于安装WordPress其实没啥好说的,只要搞清楚上一步的wp-config.php,大家都知道怎么回事儿,
有个安装向导的,你上传好文件,访问相应的目录,会指导你创建一个完全符合标准的wp-config.php文件的。

这里就随便说说一些安装WP的捷径吧。
不过,如果你是属于合租的空间,并且发起者只给你提供了FTP和MYSQL的用户密码,那么请使用Net2Ftp

通常,我们下载的WordPress是ZIP或GZ格式的压缩包,然后解包,一个一个上传,这样其实很费时间的。
如果你购买的空间有cPanel, DirectAdmin等面板,你会发现File Manager模块是具有解压缩功能的,
答案就呼之欲出了。

你可以只上传一个压缩包到空间上,然后使用File Manager来直接解压,然后调整目录结构,然后安装WP。
如果你没有那些面板呢,那么可以使用Net2Ftp,它也提供了打包解包的功能,
这样可以节省很多时间,因为FTP每上传一个文件都是一次连接,如果你的FTP够慢且文件够多,那就有的等了。

话说,如果你的空间提供SSH就更好了,
直接通过WGET获得压缩包,然后解压安装,基本没有文件需要经过你的电脑,那又是另一种快。

第三点,目录、文件权限

这个问题一般只会出现在LAMP平台,也就是Linux主机上(WIN的IIS一般直接告诉500错误)。

通常,在LINUX里面,不同的用户有不同的权限,而某个用户又隶属于某个组,
同时,Apache的运行需要设置一个用户,FTP服务也需要设置一个用户(权限以写入文件的账户为准),

这样的话,就会造成文件的属主不同(own),而这个属主还包含不同用户\不同组的区别在里面。

一般情况下呢,cPanel的WEB/FTP用户我记得是同一个,
也就是用户本身的ID,所以基本不会出现权限方面的问题,因为不论是通过WEB还是FTP,文件的属主都是一个人。

而特殊情况呢?例如DirectAdmin和Plesk,据我的判断,他们的WEB和FTP服务是分离的,
WEB和用户只是属于同一组,但是WEB是单独的UID,这样就容易造成文件属主混乱的问题,

说了这么多废话,那具体的作用呢?很简单,
 第一,你安装WP的时候,如果是用向导的,那么会告诉你无法创建wp-config文件;
 第二,你编辑WP模板时,会告诉你该文件无法写入。而这个时候,一些大虾会推荐你用FTP改的……
 第三,你会发现“Plugins -> Add New”里面的两项都不能使用。
 第四,你在POST的时候会发现,无法上传文件(话说,我是用PICASAWEB的)。
这只是其中一部分我个人发现的问题,我觉得应该还有更多的问题有待于发现。

而你唯一能做的就是,
在FTP里面把文件/目录的权限设置为664/775,或者666/777也行,只要不报错。

话说回来,第一步的那个wp-config.php,作者可能考虑的是权限这个方面的问题,
不过他的那个做法治标不治本,还是有些功能不行,至少常用的模板编辑就行不通。

第四点,本地环境测试

有些合租发起者,建议成员在本地测试安装WordPress,修改模板、插件等东西,
虽然发起者可能是考虑到错误的PHP修改有可能造成服务器的宕机从而影响合租的成员们,
但事实上我觉得不太妥当。

首先,你的本地环境肯定不可能跟服务器环境相似,
WP一般推荐使用的都是LAMP平台,而大多数人还是使用的WINDOWS,即使有部分人出于尝鲜的目的试用Ubuntu等linux系统,但也不能说明你对服务器环境的搭建有多么在行,所以,你很难创造出一个跟服务器一样的环境。

既然环境都存在差异,你又怎么能确定在你电脑上正常或不正常的功能在服务器上怎么样呢?
所以我建议,仅仅是学习测试PHP的时候你在本地搭建环境,不要使用你的空间来试验,
但如果你的WP修改不涉及到PHP代码,请谨慎使用本地环境测试。
 

迁移

第一点,数据库编码

这个是个比较头疼的问题,早期我使用Makemyblog的空间时,MYSQL的默认编码是latin1,而不是UTF8。

事实上,你在使用的过程中不会遇到什么问题,因为一般人也不轻易去动数据库,
但是,如果你有动数据库的需要,你会发现,在你的PHPMYADMIN里面怎么全都是乱码,
这是因为PMA默认的输出为UTF8,而这两种编码方式不同,所以latin1在UTF8下就是乱码。

当时我是这么处理的,用一个插件导出我的数据,
这样它就会根据PHP执行时的要求,以latin1的方式读取,以UTF8的方式输出,
这个插件就是WordPress Database Backup,基本上来说,配合wp-corn,你的数据库是无忧的了。

而另外一点需要注意的就是,你的数据库整理字符集,最好设置为utf8_gerenal_ci,
否则,如果任何新建的表,在SQL语句里面没定义字符集的话,就会选择数据库整理的字符集为默认。

好吧,总结一下下,
总的来说,就是你的存储编码最好为UTF8,这样可以避免很多兼容性上的问题。
当然,如果你的WP数据库已经是UTF8编码了,搬家时你直接使用PMA进行一个导出备份就行了。

第二点,备份我的文件

这点相对重要一些了。
众所周知,我们的WP安装包里面,会有一个wp-content目录,而里面一般会包含plugins、themes、languages(带语言包的版本)目录,顾名思义,便是插件、主题、语言包的所在地,如果你有上传的文件,还有个uploads目录,
而事实上,我们接触的最多的也就这三个目录,新安装主题、安装插件、换语言界面、上传图片等附件都在这里。

那么,如果我们要搬家,应该怎么处理?
聪明的你应该明白了,我们只要备份自己的文件就可以了,WP的文件到处都有的嘛,何必再折腾呢。

OK,备份wp-content目录,你可以参考本文的“简单安装”章节,同样是一个打包解包的过程,
同时,推荐你也备份一下wp-config.php这个文件,省得到时候还要自己设置什么,直接修改现成的就好了。

话说回来,我这样做的目的其实是有点程序洁癖,
既然搬家了,我就喜欢用一套全新的WP再加上我自己的文件,这样感觉比较好。

本文到此为止了,如果各位有不明白的地方欢迎留言,
如果确实需要很准确的操作说明或者教程,也请留言,我会择时弄一些详细教程出来的。

Published by

贰壹

忙忙碌碌仍在路上的人,热爱IT,挚爱16。

5 thoughts on “漫谈WordPress安装、迁移”

  1. 亏了,昨天搬家到前没有看你的帖。呵呵。自己折腾了半个晚上。目前基本没发现什么问题。dh提供的ssh很好用,第一次ncftp也很强大,不用自己电脑慢腾腾的中转文件了,汗,以前只用lftp.

    1. 呵呵,其实也不是什么有新意的东西,就是总结一下,且是以一个WINDOWS用户的角度来看问题的~
      DH的SSH算是比较优秀了,至少没有那些乱七八糟审核的需要……

Leave a Reply

Your email address will not be published.

Captcha Code

This site uses Akismet to reduce spam. Learn how your comment data is processed.