如何以最快的速度在云端切换WordPress服务器数据?

一、背景介绍

之前本blog一直用buyvm上的VPS,他们的产品价格确实便宜,但是便宜没好货服务器经常宕机,博客好不容易经营起来的权重全部没了,所以,本人在一怒之下就换成了Linode 提供的高性能VPS了,虽然要20美元一个月,但是只要你在乎你的blog,花这些钱也觉得值了。

要换服务器问题就来了(对于高手来首虽然是小菜,但不懂技术的还是挺麻烦的),我的博客程序用了快一年,已经有700MB,打包后也有600多MB,下载和上传都是很麻烦的事情。怎么办?如何在服务器上打包?如何在新服务器上直接下载旧服务器上的压缩包?如何在新服务器上解压?新服务器权限如何快速设置?问题就是答案,本篇文章就是告诉大家,如何以最快的速度在云端切换WordPress服务器数据?

二、原数据打包

对于已经用过WordPress的同学来说SSH工具就不陌生了,第一步咱们就是用SSH工具打包元数据

1.利用SSH工具登录服务器(mac终端可直接输入:ssh root@109.243.53.56(这个IP是你的老服务器的IP) 回车后输入密码登录)

2.输入cd /home/wwwroot/

3.打包你的目录(如:我的博客用  zip yunrui.zip -r  www.yrucd.com  意思就是把我的网站目录打包成yunrui.zip)

三、原数据库导出

1.登录phpmyadmin(一般地址是:你的服务IP/phpmyadmin)

2.输入帐号(一般是root)密码是你设置的服务器密码

3.登录主页 第一步选导出,然后选中导出方式为自定义,选中数据库中你要导出的数据库 ,在输出中选保存到服务器上的save/文件夹中,最后点击该页面底部的“执行”按钮,完成博客数据库导出。(save文件夹的地址在 /home/wwwroot/phpmyadmin/save 中,你可以直接用FTP工具下载本地桌面上,一般名称是localhost.sql,这个文件一般不大,所以是否云处理都无所谓)如何以最快的速度在云端切换WordPress服务器数据

四、在新服务器上解压原来的网站压缩包

前面工作已经完成了一半,现在第一步是在新的服务器上下载并解压网站打包的数据包

1.用SSH工具登录你的新服务器

2.输入cd /home

3.在新服务器上下载旧服务器的压缩包
输入:wget -c 109.243.53.56/yunrui.zip (这个IP是你的旧服务器的IP)  回车
后就开始下载了,这里你可以体验到云端下载的快感了,Linode 提供的服务器云端下载速度最高达到了9.78MB/S,所以600MB小意思!

4.解压缩
输入:unzip yunrui.zip -d wwwroot (意思就是把yunrui.zip解压缩到wwwroot目录下,解压好在wwwroot里的就是www.yrucd.com了)
速度也是非常快

五、在新服务器上导入数据库

1.登录新服务器的phpmyadmin后台

2.登录到首页,第一步选择导入,第二部选从计算机中上传,第三步点选择文件的按钮(选择刚才你下到桌面上的localhost.sql)然后点击执行。
如何以最快的速度在云端切换WordPress服务器数据

这样数据库和网站目录的数据都已经到了新服务器上

六、完成域名解析和在新服务器上设置目录权限

1.域名解析和你创建你的网站时一样操作
添加虚拟主机,执行如下命令:/root/vhost.sh 根据提示输入要绑定的域名,回车,如果需要添加更多的域名,输入y,再输入要另外绑定的域名,多个域名可以用空格隔开(注:带www和不带www的是不同的域名,如需带www和不带的www的域名都访问同一个网站需要同时都绑定)。再输入域名绑定的目录(绝对目录,如/home/wwwroot/lnmp,如果不填默认是/home/wwwroot/绑定的域名,目录不一定非要是/home/wwwroot/,如果/data/ 下面有大量的空间也可以填写/data/www/lnmp 之类的。),再选择是否添加伪静态规则,默认已经有了discuz、discuzx、wordpress、sablog、emlog、dabr、phpwind、wp2(二级目录wp伪静态),可直接输入以上名称即可,如果需要添加自定义伪静态规则,直接输入一个想要的名字,程序会自动创建伪静态文件,直接在/usr/local/nginx/conf/你自定义的伪静态名字.conf 里面添加伪静态规则就行(注:添加完执行/etc/init.d/nginx restart 重启生效)。接下来会提示是否需要启用日志功能,一般情况下不需要启动,直接输入n就行,如需启动,输入y,再输入要定义的日志文件名字,回车就会自动添加虚拟主机。
域名解析

2.在你的域名管理后台把域名绑定的IP改成新服务器的IP(我用的是DNSPOD)

到这里你的网站已经正式移到新的服务器上了,而且可以访问,但是进入后台你会发现权限不行,可能不能上传图片或插件功能不能用了,所以你还要设置服务器的权限,这里也有快速设置的办法。

3.目录权限修改

例子

将/home/wwwroot/里的所有文件和文件夹设置为755权限

(1)直接指定路径修改

chmod -R  755 /home/wwwroot/*

(2)手动进入该目录修改权限(并显示详细过程)

cd /home/wwwroot
chmod -Rv  755 * #注意:“*”表示通配符,指的是所有文件和文件

4.wordpress权限应该如何设置?

这一方面要求我们在为博客选择虚拟主机时考虑主机商的硬件设备与技术能力,确定其是否能够稳定地抵御绝大多数的网络攻击,另一方面,也需要我们正确地设置Web服务器中的目录/文件权限,不给恶意攻击者可乘之机。

从理论上来说,要保证Web服务器的安全,最简单的办法便是赋予文件最低的操作权限,比如说所有文件均为只读,而不可写不可执行,这样,攻击者便会无从下手。但在实际应用中,情况并非这么简单,以使用WordPress搭建的博客网站来说,必须赋予某些文件的可写、可执行权限,因为WordPress自身在运行过程中需要存取、修改某些文件才能实现网站的服务功能。

对Wordpress目录/文件权限的设置,实际上就是在网站的可用性、易用性与安全性之间寻得一个恰当的平衡。下面我们具体来讨论一下(以Linux/Apache平台、WordPress位于网站根目录为例):

“/wp-admin/”: WordPress管理目录,其中的所有文件应该只赋予所有者可写权限;

“/wp-includes/”:WordPress 支持库目录,其中的所有文件应该只赋予所有者可写权限;

“/wp-content/”:这个目录下的文件权限设置相对复杂了些,让我们分别来看:

“/wp-content/themes/”:对于WordPress主题目录下的文件,如果您从不使用WordPress内置的主题编辑器,那么可以简单地设置其仅允许所有者可写;

当然,对大部分朋友来说,可能常常需要修改主题如css、模板文件等,这就应赋予这些文件Apache运行用户(一般为nobody)所在组的可写权限。而“/wp-content/plugins/”目录下存放的插件文件,同样也需视情况而定,一般而言,大部分插件可以只赋予所有者可写权限,但同样也存在部分插件需赋予Apache运行用户(一般为nobody)所在组的可写权限。

而如果要使用WordPress内置的Database Backup插件,则需要将整个“/wp-content/”目录赋予可写的权限,一般为755,在某些主机设置中甚至可能需要更高的777。

“/”:WordPress根目录,应该只赋予所有者可写权限;不过,如果您的博客使用Permalinks,需要WordPress来自动生成、应用rewrite规则,则必须赋予Apache 对“.htaccess”的操作权限。此外,如其中内含连接wordpress 数据库的用户名与密码的“wp-config.php”,则应赋予更严格的操作控制,禁止遍历,极端情况下可直接将其设为600。

七、VPS搭建WordPress更新/安装插件时需要输入FTP信息的解决方法

大家在使用LNMP或是之前文章提到的LEBScript之后安装Wordpress很容易成功,但是在使用过程中往往会有些小问题,比如说需要输入FTP用户名和密码才能更新/安装插件或主题。这个问题应该说由来已久了,特别容易发生在VPS上,因为我们在SSH上操作时并没有给Nginx适当的权限去写网站文件夹,这就造成每次我们都要单独输入FTP的信息。

VPS搭建Wordpress更新/安装插件时需要输入FTP信息的解决方法
解决方法就是利用chown语句将网站文件夹的所有者设置给服务器:

如果你是LNMP的用户,请执行下面语句:

chown -R www /home/wwwroot/网站目录

如果你是LEBScript的用户,请执行下面语句:

chown -R www-data /var/www/网站目录

这样,你的Wordpress在更新或安装东东的时候就不会再提示你填入什么FTP信息了~

八、总结

其实用到的都是很简单的知识,但是通过这些小知识,我们可以在10分钟以内搬家你的blog数据,让你搬家毫无后顾之忧,也让你享受了“云”处理的快感!

如何以最快的速度在云端切换WordPress服务器数据?》有3条评论

发表评论

`
返回页顶