本教程分为三篇,第一篇搭建环境,第二篇设置环境,第三篇配置https访问
上一次更新是2020年五月,这期间因为各种原因,毕业、项目、考研、工作(主要是懒)一直耽搁了,本来小站运行在阿里云上,用的是宝塔和搭好的环境。再次登上去发现已经残垣断壁了,再加上需要端口号进行访问太麻烦,决定购入一台vps进行博客的搭建,这次就不安装宝塔了,完全从服务商给的centos7镜像开始手动搭建。因为本文已经是搭建好的情况下写的,搭好才发现可以水写几篇博客,所以我在虚拟机里重新开了个centos重做一下,并进行记录。
本人一通操作下来发现,中文内容的教程,大多数会在关键步骤告诉你,你就输入这个就行,而本人更喜欢有来源的教程。并且这里面太多的坑在大多数教程里面没有说明,**所以我希望这篇教程足够的详细,能帮到点进来的各位。**但是若本文对命令没有解释,请自行使用 -h --h --help 进行命令帮助查看,或网络搜索命令名。
本人的技术自定义为过家家级别,很多方面还需要各位多多指教,有写的不好或错误的地方还请包涵指正,感谢花时间阅读我的教程。
首先使用ssh连接上你的服务器
swap简单来说就是虚拟内存,若你安装的机器配置较差建议检查是否开启free -h
,若swap后面显示0则没有开启,不需要可以略过这部分。
本文只讨论使用文件方式建立swap的方法,若你想使用分区方式请自行搜索。
建立swap文件
dd if=/dev/zero of=/swap bs=1024 count=2000000
dd简单地说是从if拷数据到of。该命令用于创建一个2g的空文件,文件路径是/swap,若你的路径不同,下面所有这个路径都需要更改。/dev/zero可以一直提供0,bs是块大小单位是字节,count是块数量。
更改swap文件权限并让系统转为swap文件
chmod 0600 /swap
如果不做这个,在下一步会提示你别的权限不安全,你可以进行尝试
mkswap /swap
转换成功之后会有相应的提示
手动挂载与自动挂载
swapon /swap
这样做之后,再运行free -h
你就能看到swap已经开始起作用了,但重启后又需要重新运行,所以我们让系统自动挂载。
使用你喜欢的编辑器编辑
nano /etc/fstab
添加一行
/swap swap swap default 0 0
对应,文件路径,挂载点,文件系统类型,挂载选项,是否被备份,是否开机校验。
若不再想使用swap,先删除文件中添加到那行,重启或使用命令取消挂载,然后删除文件即可。
swapoff /swap
接触过iphone越狱的朋友应该知道软件源这个概念,没接触过的话,就类似于酷安、应用汇、豌豆荚这样的地方,给你下软件的,但有的软件你家有,他家没有,所以我们需要配置软件源。
软件源又分每个软件自己提供的源,以及一些机构、组织等提供的大型软件源,比如这里我使用的epel软件源,当然你也可以进入每个软件的官网查看软件自己提供的源nginx官方安装指导
安装epel-release也就是epel软件源,这里面不仅有nginx,还有许多别的软件包。epel官方安装指导
yum install epel-release
安装remi,这里面有各种php及所需的扩展 remi官方安装指导
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
安装mysql官方软件源mysql软件源官方地址
yum install https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm
至此你已经具备安装nginx+mysql8+php7.4的所有条件,继续安装bash-completion,这是用来给一些命令,比如systemctl进行tab补全的,这个命令在后面启动、停止、重启、设置开机启动都要用到。
yum install bash-completion
**推荐(非必须)**将系统以及软件更新到最新
yum update
然后重启一下
reboot
只需要 yum install nginx
便可安装,安装完成之后输入nginx,再输入一次,直到出现占用80端口的提示,ctrl+c退出,此时,nginx便安装成功,我这里使用firewall来放行,如果你使用iptables,请自行搜索如何放行80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
最后一个参数是永久保存,即重启不丢配置的意思。zone参数涉及到firewall的知识,有机会以后出一篇文章来讲。
此时试着访问nginx所在ip,若看到默认页面即安装成功。若失败,可以按照下面的典型症状排查
curl
本机看看有没有页面内容ps -e|grep nginx
检查nginx是否运行netstat -nlp|grep nginx
检查nginx是否监听80systemctl enable nginx.service
yum install mysql-community-server
安装完成后启动 systemctl start mysqld.service
同样的,放行一下端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
运行mysql -V
,若显示出来版本号则表示安装成功,下一篇文章再讲如何配置。
设置开机启动 `systemctl enable mysqld.service
运行 yum --enablerepo=remi install php74-php-fpm php74-php php74-php-gd php74-php-xml php74-php-sockets php74-php-session php74-php-snmp php74-php-mysql
enablerepo表示这里限定使用remi源,若你想更改版本,可以使用yum --enablerepo=remi search php
来查看有哪些版本可以安装。一般来说,将上述命令中的74改为对应版本即可。
运行php74 -v
,输出版本号即表示安装成功
设置开机启动systemctl enable php74-php-fpm.service
至此,你已经具备运行wordpress的条件,在这个基础上,你还可以安装java、nodejs以运行更多的后端。为避免篇幅过长,在下一篇教程里将带你配置好整个环境。再次感谢花时间阅读我的教程。