wordpress从windows迁移到centos(wordpress优化)

Home / Article MrLee 2015-6-11 3964

本博客从建立以来一直用的是windows2003服务器,apache2.0和php5.35,速度一直是个最大的问题,而且CPU经常爆满,当初是为了在windows上面跑一些Win32程序,所以选择了windows,结果一苦B就是大半年,今天终于下决心更新了CentOS,传说中大牛用的服务器。为了提高逼格,果断行动……
花了几个小时总算是搞好了,现在能正常访问,速度最少提高3倍以上,并且没有用缓存。连wordpress都提升3倍以上,其它的小的cms估计最少提升10倍以上。好了,开始记录下来,方便广大博友们参考!
首先要把博客备份,我用的工具是Navicat,把整张表都导出来,我的博客较小,8MB数据,然后用7ZIP打包所有的文件(我的居然有200多MB,附件占了不少)。好了,把备份的文件下载下来,放到一个很安全的地方,没了你就完蛋了!最好测试一下,看看文件能不能正常打开,防止文件下载不全或者其它问题,出错。。。
我是阿里云的服务器,然后直接换系统盘,把原来的windows2003更换成了centos wordpress建站版,也就是换好了我的系统就已经配置好了php,apache2和mysql,并且安装好了wordpress能正常访问,此去省略了centos配置php,apache2和mysql的流程,不然估计又得花时间去研究。如果不是这步骤过来的朋友,那你们百度一下,配置好了再继续往下看吧。
换好之后,我们首先要做的事件是啥?因为现在没有了远程桌面,所以怎么管理呢?还好小弟以前用过putty,这个玩意虽然看起来貌不惊人,但是功能却非常强大,我已经下载好了。putty_V0.63.0.0.43510830,下载好运行,输入你的主机IP,然后连接

QQ截图20150611155916

QQ截图20150611160002

OK,成功登录之后,我们首先要做的是安全FTP服务,有了它才可以正常上传文件,以下文章摘自网络,也是亲测……
FTP篇
yum install vsftpd
2.启动/重启/关闭vsftpd服务器 [root@localhost ftp]# /sbin/service vsftpd restart Shutting down vsftpd: [ OK ] Starting vsftpd for vsftpd: [ OK ] OK表示重启成功了. 启动和关闭分别把restart改为start/stop即可. 如果是源码安装的,到安装文件夹下找到start.sh和shutdown.sh文件,执行它们就可以了.
3.与vsftpd服务器有关的文件和文件夹 vsftpd服务器的配置文件的是: /etc/vsftpd/vsftpd.conf
vsftpd服务器的根目录,即FTP服务器的主目录: 在/var/ftp处pub处 如果你想修改服务器目录的路径,那么你只要修改/var/ftp到别处就行了
4.添加FTP本地用户 有的FTP服务器需要用户名和密码才能登录,就是因为设置了FTP用户和权限. FTP用户一般是不能登录系统的,只能进入FTP服务器自己的目录中,这是为了安全.这样的用户就叫做虚拟用户了.实际上并不是真正的虚拟用户,只是不能登录SHELL了而已,没能力登录系统.
/usr/sbin/adduser -d /opt/test_ftp -g ftp -s /sbin/nologin test 这个命令的意思是: 使用命令(adduser)添加test用户,不能登录系统(-s /sbin/nologin),自己的文件夹在(-d /opt/test_ftp)),属于组ftp(-g ftp) //设置test密码 passwd test 这样就添加了一个FTP用户了.下面的示例可以帮助你进入FTP服务器了.
[root@localhost ftp]# ftp ftp> open 192.168.0.33 Connected to 192.168.0.33 (192.168.0.33). 220 (vsFTPd 2.0.5) Name (192.168.0.33:gxl): test 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> quit 221 Goodbye.
在windows中,只要在浏览器中输入 ftp://192.168.0.33 进入FTP服务器,然后 右键 登录,输入用户名和密码就可以登录自己的目录了.
修改FTP目录添加以下代码:
local_root=/home/username
当本地用户登入时,将被更换到定义的目录下。默认值为各用户的家目录。
弄完了这个用FileZilla连接FTP服务器,然后把我们之前备份的两个文件通通上传到服务器,注意,上传位置是在/opt/test_ftp/,然后通过命令移动过来,我是用装了界面,这里不详细介绍怎么剪切了,网上一查命令老多了!剪切到apache指定的目录之后,用7za x解压文件,这个需要安装7z,输入命令[root@ hostname ~] # yum install p7zip即可安装,解压完了就完全了第一步,不过此时输入域名是可以正常访问了,如果不能访问注意权限问题。 chmod 777 * -R wordpress目录即可,应该就能正常访问了!那工作还没有完成,数据库还没有连上。我用阿里云这个虽然自动安装好了,但是也有坑的地方,MD不告诉我密码我怎么办?于是又有了下面这篇
MYSQL密码篇 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。为了方便,你的新密码一定和原来数据库密码一样,不然要改动wordpress里面的config.php。我们能省一步是一步,不需要自找麻烦,对吧! 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对 外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全 状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。 2.修改MySQL的登录设置: # vi /etc/my.cnf 在[mysqld]的段中加上一句:skip-grant-tables 例如: [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock skip-grant-tables 保存并且退出vi。 3.重新启动mysqld # /etc/init.d/mysqld restart Stopping MySQL: [ OK ] Starting MySQL: [ OK ] 4.登录并修改MySQL的root密码 # /usr/bin/mysql Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 3 to server version: 3.23.56 Type 'help;' or 'h' for help. Type 'c' to clear the buffer. mysql> USE mysql ; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ; Query OK, 0 rows affected (0.00 sec) Rows matched: 2 Changed: 0 Warnings: 0 mysql> flush privileges ; Query OK, 0 rows affected (0.01 sec) mysql> quit Bye 5.将MySQL的登录设置修改回来 # vi /etc/my.cnf 将刚才在[mysqld]的段中加上的skip-grant-tables删除 保存并且退出vi。 6.重新启动mysqld # /etc/init.d/mysqld restart Stopping MySQL: [ OK ] Starting MySQL: [ OK ]
Work for fun,Live for love!
这里我要说明一点,mysqld我服务器是没有的,只有mysql,也就是把上面的mysqld换成mysql就行了。 默认情况下,mysql是不支持远程连接的,为了更好的管理,我果断的开启了远程连接,
操作如下: 1、root用户登录到mysql数据库 /usr/local/mysql/bin/mysql -u root -p (输入密码进入mysql)
2、进入mysql,输入如下命令 use mysql;
3、查看user表的情况 SELECT Host,User FROM user; //指明主机名称,“%”表示匹配所有字符串
4、 UPDATE user SET Host = '%' WHERE User= 'root' LIMIT 1;
5、输入如下命令让刚才设置的命令生效 mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
好了,现在可以用Navicat连接数据库了,最好不用本地使用Navicat导入数据库,可能过程容易出错,我就出现过一次,如果你的数据小,可以使用它来直接执行本地数据文件,这样你的服务器数据库就还原好了。不过不推荐这种方法。使用下面方法更好更快捷。。。 前面通过FTP把SQL已经上传了,所以我们通过SQL命令导入即可,步骤大概如下, //选择数据库 $mysql use wordpress; //设置编码 如果你是GBK你就用GBK或者BIG GB2312之类的,不然乱码的哦 $mysql set names utf8; $mysql source /sql路径/wordpress.sql; 然后导入成功就能正常访问了。到这里,就已经全部结束了,恭喜你,你成功迁移到centos服务器啦!赶紧体验一下这速度,是不是很快~~~~
apache多虚拟目录设置方法: 在/usr/local/apache2/conf/httpd.conf最后一行加上: Include /usr/local/apache2/conf/vhosts/*.conf 再创建一个vhosts目录,里面放多个.conf文件(注意:如果你的端口不是用80而是8080,则需要在httpd.conf添加一个Listen:8080,然后重启apache生效),如wordpress就放wordpress.conf,内容如下:

DocumentRoot    /home/wordpress
ServerName      127.0.0.1
DirectoryIndex index.htm index.html index.shtml index.php
CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/cacti_access%Y%m%d.log 10M" common

Options FollowSymLinks Includes
AllowOverride All
Require all granted


本文链接:https://www.it72.com/3389.htm

推荐阅读
最新回复 (0)
返回