部署LNMP服务
服务器系统:CentOS 7.7
准备工作
安装编译环境
首先要让安装主机具备编译程序源码的环境。这需要具备C语言、C++语言、Perl语言的编译器,以及各种常见的编译支持函数库程序 因此请先配置妥当软件仓库,然后把下面列出的这些软件包都统统安装上:[root@iZ0jl0gl3nj3g34ts6cjt ~]# yum -y install
apr* autoconf automake numactl bison bzip2-devel cpp curl-devel fontconfig-devel
freetype-devel gcc gcc-c++ gd-develgettext-devel kernel-headers keyutils-libs-devel
krb5-devel libcom_err-devel libpng-devel libjpeg* libsepol-devel libselinux-devel
libstdc++-devel libtool*libxml2-devel libXpm* libxml* libXaw-devel libXmu-devel
libtiff* make openssl-devel patch pcre-devel perl php-common php-gd telnet zlib-devel
libtirpc-devel gtk* ntpstat na* bison* lrzsz cmake ncurses-devel libzip-devel libxslt-devel
gdbm-devel readline-devel gmp-devel
………………省略部分输出信息………………
Complete!
安装LNMP动态网站部署架构所需的4个软件源码包和1个用于检查效果的博客系统软件包
[root@iZ0jl0gl3nj3g34ts6cjt ~]# mkdir /lnmp
[root@iZ0jl0gl3nj3g34ts6cjt ~]# cd /lnmp/
#安装LNMP动态网站部署架构的源码包
[root@iZ0jl0gl3nj3g34ts6cjt lnmp]# wget https://www.linuxprobe.com/Software/rpcsvc-proto-1.4.tar.gz
[root@iZ0jl0gl3nj3g34ts6cjt lnmp]# wget https://www.linuxprobe.com/Software/nginx-1.16.0.tar.gz
[root@iZ0jl0gl3nj3g34ts6cjt lnmp]# wget https://www.linuxprobe.com/Software/wordpress.tar.gz
查看下载好的源码包
[root@iZ0jl0gl3nj3g34ts6cjt lnmp]# ls
rpcsvc-proto-1.4.tar.gz nginx-1.16.0.tar.gz
wordpress.tar.gz
源码包安装服务程序具有两个优势
1.源码包的可移植性非常好,几乎可以在任何Linux系统中安装使用,而RPM软件包是针对特定系统和架构编写的指令集,必须严格地符合执行环境才能顺利安装(即只会去“生硬地”安装服务程序)
2.使用源码包安装服务程序时会有一个编译过程,因此能够更好地适应安装主机的系统环境,运行效率和优化程度都会强于使用RPM软件包安装的服务程序
编译rcpsvc压缩包
rpcsvc-proto是一款包含rcpsvc协议文件的支持软件包名称,rcpsvc协议在后续Nginx与MySQL服务程序的部署过程中都需要被调用到[root@iZ0jl0gl3nj3g34ts6cjt lnmp]# tar xzvf rpcsvc-proto-1.4.tar.gz #解压源码包文件
[root@iZ0jl0gl3nj3g34ts6cjt lnmp]# cd rpcsvc-proto-1.4
[root@iZ0jl0gl3nj3g34ts6cjt rpcsvc-proto-1.4]# ./configure #编译源码包代码
[root@iZ0jl0gl3nj3g34ts6cjt rpcsvc-proto-1.4]# make #生成二进制安装程序
[root@iZ0jl0gl3nj3g34ts6cjt rpcsvc-proto-1.4]# make install #运行二进制的服务程序安装包
[root@iZ0jl0gl3nj3g34ts6cjt rpcsvc-proto-1.4]# cd ..
环境搭建
配置Nginx服务
- Nginx是一款相当优秀的用于部署动态网站的轻量级服务程序
- Nginx服务程序的稳定性源自于采用了分阶段的资源分配技术,降低了CPU与内存的占用率
- Nginx具备的模块数量与Apache具备的模块数量几乎相同,而且现在已经完全支持proxy、rewrite、mod_fcgi、ssl、vhosts等常用模块
- Nginx还支持热部署技术,可以7×24小时不间断提供服务,还可以在不暂停服务的情况下直接对Nginx服务程序进行升级
1.创建用于管理网站服务的系统账户
在新建账户时应使用-M参数不创建对应的家目录,以及使用-s参数指定登录后的Shell解释器为/sbin/nologin,确保任何人都不能通过这个账号登录主机
[root@iZ0jl0gl3nj3g34ts6cjt lnmp]# useradd nginx -M -s /sbin/nologin
[root@iZ0jl0gl3nj3g34ts6cjt lnmp]# id nginx
uid