VPS+WordPress的个人博客搭建之路(转)

原文链接:http://hellojane.me(侵删)

 

第一篇博客文章,就来记录这个博客的搭建过程吧。

搭建这个博客的起因是买了一台搬瓦工的VPS用于几个小伙伴的科学上网,于是也想用VPS做点别的事情,因此开始搭建个人博客。选择WordPress的原因是功能齐全,容易上手,没写过前端的鄙人也就图个方便了╮(-_-)╭

【第一部分:域名与空间】

域名的话就随便上个买域名的网站买一买就好了。我是在万网买的,顺便也提供域名解析。域名解析万网有教程,如果不用万网也可以用DNSPod之类解析域名。

VPS主机可选择的有很多,个人用的是搬瓦工的VPS,买之前搜一下优惠码,有小折扣。搬瓦工的机器默认是安装了CentOS,能够直接在KiwiVM控制面板安装shadowsocks。因此我后来搭建网站时也是基于CentOS 6进行的,当然你也可以安装自己喜欢的Linux操作系统。

如果你跟我一样使用的搬瓦工VPS,以及CentOS 6,那么可以参照以下过程建立到服务器的SSH连接:

1. 在KiwiVM控制面板选中Root password modification这一栏,生成一个新的root密码,记下来。(我不知道默认的是啥,就新生成了一个)

2. 依稀记得CentOS已经有安装ssh,如果没有的话,进入KiwiVM面板,打开Root Shell,这便进入了CentOS命令行。
安装ssh : yum install ssh
启动ssh:service sshd start
设置开机运行:chkconfig sshd on
其他的Linux系统也类似,只不过不是用yum安装而已。

3. 在mac上用指令: ssh -p ssh的端口号 root@服务器ip地址
然后输入root密码即可。端口号在KiwiVM面板的Main controls可以查看。
Windows下也类似,虽然不能直接使用命令行,但使用PuTTY等软件即可。

4. 为避免每次输入root密码的繁琐,可以配置rsa密钥免密码登陆:
1)在mac终端运行指令:ssh-keygen(如果你用过git应该已经生成过)
2)在mac终端运行指令:scp -P 28273 .ssh/id_rsa.pub root@vps的ip:/root/.ssh/authorized_keys
这里可能出现VPS里面没有/root/.ssh/这个文件夹,需要先用密码登陆新建一个

现在可以我们就可以免密码登陆啦。

【第二部分:安装LNMP】

LNMP(linux+Nginx+MySQL+PHP)的安装指南可访问官方的LNMP一键安装

如果懒得看指南,那么安装LNMP可以先执行:
wget -c http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz && tar zxf lnmp1.2-full.tar.gz && cd lnmp1.2-full && ./install.sh lnmp

安装期间需要设置的有:

  • MySQL密码:输入想设定的密码即可。
  • 是否启用MySQL InnoDB:需要安装输入y回车,不需要输入n回车。如果VPS空间小就不建议安装了。还可以搜索“MyISAM与InnoDB的优劣”来决定要不要装。
  • MySQL版本号:默认回车
  • PHP版本号:默认回车
  • 内存优化:默认回车

然后就可以敲回车开始安装了,会自动安装编译Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer这几个软件。

安装完LNMP,还需要安装虚拟主机。

运行:/root/vhost.sh

此时将会提醒你输入你的域名。添加一个过后,还会提示是否添加更多域名。比如我添加了hellojane.me以及www.hellojane.me两个。输入域名目录那里一般用默认的就可以。开启伪静态(Allow Rewrite rule?)选择y。然后选择伪静态规则,可以看到有wordpress/discuz/typecho/sablog/dabr可选,我们选择wordpress即可。最后是选择是否开启log,选择不开启。然后就可以回车确认开始添加虚拟主机了。

添加完虚拟主机,就可以通过域名访问你的网站了,但是这时啥都没有,访问只有一个404页面:)。

【第三部分:安装FTP】

安装FTP后你可以方便地把wordpress安装文件上传到你的服务器……然而由于你可以直接在服务器下载,所以这个功能其实也没什么用的(笑中带泪)

如果要安装的话可以按照这篇博客来。里面有两个地方注意一下:

1) 设置Selinux那一个步骤不一定需要进行。我这个版本的CentOS就没有Selinux。

2) 设置防火墙这那一步,一开始我这没有iptables这个配置文件。可以在网上搜一搜照着写一个;也可以运行service iptables restart,会生成一个。然后要添加作者下面写的两条规则,不过他写的语法有点问题,要把“tcp -p -dport”改为“tcp -p tcp –dport”。(别问我为啥出现两个tcp,因为我照着写dport系统提示没有这个protocol,所以我猜那个地方得写tcp)

安好了过后可以安装FileZilla这种FTP客户端来管理你VPS上的文件,这里就不赘述了,要用的话搜一搜就知道了。

【第四部分:安装WordPress】

WordPress的安装参照官方指导。在这里简单说明一下:

1) 如果有FTP的话可以在自己的电脑上下载WordPress安装包,解压后上传到服务器。没有FTP的话可以在服务器命令行运行wget http://wordpress.org/latest.tar.gz,接着解压缩: tar -xzvf latest.tar.gz 这样WordPress压缩包将会解压缩至文件夹wordpress。其实只要服务器是Linux系统就建议直接用wget了,省得装FTP。

2) 一键安装LNMP的时候有安装phpMyAdmin,这是一个MySQL的管理界面,是用PHP书写的。通过[你的ip]/phpmyadmin可以访问数据库后台。于是知道你ip的人都能找到这个网址了(假装惊恐脸)……所以要改一下phpmyadmin这个文件夹的名字,它位于路径/home/wwwroot/default/,修改一个只有你知道的名字,就不怕坏人知道了😳然后我们可以参考官方给出的使用phpMyAdmin创建WordPress数据库和一个用户。当然在shell直接运行MySQL语句也是可以的,点前面那个链接,同一页也有官方教程。

3) 然后就在web浏览器中打开你的网站,这时会出现WordPress的引导配置界面。可以参照这个帖子进行配置。

上面三步做完就能开始使用WordPress了。还有要提醒的几个地方:

1) 我在配置WordPress的Step2遇到了502 Bad Gateway错误。当时上网搜了一下,有说要升级PHP5.2到PHP5.3的,当时想着睡一觉起来再弄,结果睡一觉起来这个错误消失了……但是后来还是又遇到了这个错误,解决方法是:
32bit系统:mv /usr/lib/libsqlite3.so.0.8.6 /usr/lib/libsqlite3.so.0.8.6.bak
64bit系统:mv /usr/lib64/libsqlite3.so.0.8.6 /usr/lib64/libsqlite3.so.0.8.6.bak
如果还是不行估计就要升级PHP5.2到5.3了 😛

2) 在WordPress上传图片的时候,提示“wp-content/uploads/****/**。有没有上级目录的写权限?”
我去查了一下官方说明,图片上传后是位于/home/wwwroot/[你的域名]/wp-content/uploads这个文件夹里。官方的意见是这个文件夹给775权限,我给了,但是还是不能上传。后来网上搜了一下,找到wordpress数据库,打开wp_options表,修改表中键名为upload_path的键值,添加 wp-content/uploads这个文件夹。这次就OK了。

3) 在修改博客主题时出现Warning: scandir() has been disabled for security reasons in /home/wwwroot/…… 这个错误。这是因为php里面的scandir函数被禁用了。
解决办法是编辑php.ini,找到这行:
disable_functions = scandir,passthru,exec,system,……(后面还有一大堆函数名)
去掉scandir,保存。重启php-fpm即可。

 

Leave a Reply

Your email address will not be published. Required fields are marked *

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