一小时搞定从购买云主机到Typecho安装

云主机现在越来越流行,价格也越来越便宜,拥有一台云主机似乎成了每一个站长的标配。鉴于自己开通独立博客也好几年了,但一直是虚拟主机打天下,也是时候“鸟枪换炮”了。经过考察,选择了Vultr提供的服务,新用户用paypal充值5美元就赠送25美元,相当于5美元可以使用$3.5/m的服务器将近10个月。

Vultr提供了全球15个服务器以供选择。虽然网络上更多是推荐东京或洛杉矶的节点,但是我推荐西雅图。Ping值稍微慢于前两者,但稳定性较好,前两者在多次Ping的过程中都会出现丢包情况。请输入图片描述
操作系统我选择了流行的CentOS 7,套餐就用每月3.5美元那款。其实和每月2.5美元的配置一样,但是后者只支持IPV6,在现在显然不具有通用性。不过Vultr是按照使用时间计费,它所谓的每月3.5美元是指假如服务器在这一个月一直租用,费用最高$3.5。而中间有几天你删除了服务器,那这几天就不会产生费用。请输入图片描述

创建好了服务器之后进入服务器管理界面,点击右上角的小电脑图标,就进入了主机的命令行控制界面。用默认的用户名root和密码登陆后就可以使用Linux命令来进行一系列的操作。比如修改默认密码,直接键入passwd,就可以输入新密码更改了。请输入图片描述
因为我的目的是在服务器上搭建博客系统Typecho,所以需要先配置好LAMP软件栈,即Linux操作系统+Apache服务器+MySQL数据库+PHP编程环境。在这个软件栈中,php通过脚本从MySQL数据库中读写数据,并将处理后的内容传递给服务器展现出来。

所以我们第一步进行的是安装Apache服务器。

一:安装Apache服务器

得益于CentOS的软件安装包管理系统yum,我们可以很方便的安装各种需要的软件。比如安装Apache,只需要键入命令:

$ sudo yum install httpd

系统会提醒你要占用多少空间,按“Y”后,很快就可以完成安装。输入以下代码启动Apache

$sudo systemctl start httpd.service

服务器经常会因为这样那样的原因重启,所以设置Apache随服务器启动

$ sudo systemctl enable httpd.service

假如服务器上部署了防火墙,还需要两个命令让防火墙允许HTTP和HTTPS通信

$sudo firewall-cmd --permanent --zone=public --add-service=http

$sudo firewall-cmd --permanent --zone=public --add-service=https

$sudo firewall-cmd --reload

安装妥当的情况下,访问服务器的IP地址就会显示出如下的网页请输入图片描述

二:安装MySQL数据库

因为开源的MySQL被Oracle收购,产生了闭源的风险,所以开源社区产生了MySQL的分支产品来替代它。CentOS 7的软件仓库中也将MySQL换成了MariaDB。不过既然MySQL仍然流行,所以我还是选择它作为数据库。
首先更新系统上的软件

$ sudo yum update

其次,获取MySQL社区仓库,我们可以从这里获取MySQL安装包

$ wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm

安装MySQL社区仓库

$ sudo yum install mysql57-community-release-el7-8.noarch.rpm

再次更新软件

$ sudo yum update

完毕后我们就可以正常安装MySQL了。

$ sudo yum install mysql-server

安装完毕后数据库的临时密码存储在/var/log/mysqld.log,假如不想查阅它可以跳过,直接用下面的步骤重置数据库的密码
1.停止MySQL

$ systemctl stop mysqld

2.设置MySQL环境选项——跳过授权表

$ systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"

3.用刚刚设置的方式启动MySQL

$ systemctl start mysqld

4.用root用户登录

$ mysql -u root

5.修改root用户密码(不要忘记结尾的;)

MySQL> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword') 
-> WHERE User = 'root' AND Host = 'localhost';
MySQL> FLUSH PRIVILEGES;
MySQL> quit

最后可以试验下用新密码登录MySQL

$ mysql -u root -p

同样的,设置MySQL随服务器启动

$ sudo systemctl start mysqld
$ sudo systemctl enable mysqld.service

键入下面代码可以进行一些安全配置,命令行会反馈数条信息让用户确认

$ sudo mysql_secure_installation

除了第一条改密码,按回车跳过,后面的“移除示例用户”,“禁止远程登录root用户”,“移除示例数据库”以及“立即生效”,都选择“y”同意进行。

为了安装Typecho,最后在这一环节新建一个数据库以供使用,当然是在登录MySQL命令中后使用这个命令

MySQL> create database 数据库名称;

至此,数据库就准备好了!

三:安装PHP

这里可以一次性安装PHP和PHP的MySQL扩展

$ sudo yum install php php-mysql

然后重启Apache服务器以便它与PHP协作

$ sudo systemctl restart httpd.service

在Typecho官网可以看到安装要求中写着“对mbstring”的支持,所以再安装mbstring扩展(其他要求现在均已满足)

yum install php-mbstring

为了测试下PHP是否安装妥当,可以在本地新建一个空白文档,键入``后另存为info.php,将它上传到服务器的网站根目录下(/var/www/html/),再访问http://公网IP/info.php,显示下面这样,就表示PHP已经安装成功。请输入图片描述

四:安装Typecho

Typecho的安装就非常简单,把安装文件全部上传到网站根目录,访问http://公网IP/install.php,按照提示两步即可。如果出现“安装程序无法自动创建config.inc.php文件”,那就复制提示中的内容,手工新建一个上传到根目录。安装完毕删除install.php。

至此,我也拥有一个独立服务器的博客啦!

学习整理自:
CentOS 7 安装 Apache, MySQL, PHP 指南

评论