网络上关于CentOS7 部署的LNMP文章很多,但能条理清晰,可操作可复制的文章少而又少。
恰好,最近在研究DVWA,需要重新搭建一个测试环境,借这个机会把整个CentOS7下的LNMP部署再整理一下。
LNMP环境如下:
CentOS 7.5.1804 + Nginx 1.14 + php 7.2 + MariaDB 10.2
整体搭建本身比较简单,本次搭建全部采用RPM包的方式,不需要编译,省去了安装编译环境的麻烦,毕竟这个环境是开发或研究使用的。
进入正题:
所有的执行命令都是在
root
账号下进行的,如果使用其他账号,需要在命令前加入sudo
1. 安装nginx
$ yum install wget openssl -y
$ cd ~
$ wget -c http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.14.0-1.el7_4.ngx.x86_64.rpm
$ rpm -ivh nginx-1.14.0-1.el7_4.ngx.x86_64.rpm
$ systemctl start nginx
使用curl
命令测试服务是否启动
$ curl 127.0.0.1
显示<html>
内容就表示安装成功了!
默认CentOS7下没有开放80
端口,使用如下命令使防火墙开放80
端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
直接使用了官方的Nginx RPM包进行安装即可。
2. 安装php
$ yum install epel-release yum-utils -y
$ yum install https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm -y
$ yum-config-manager --enable remi-php72
$ yum install php-fpm php-gd php-mysql php-mbstring php-mcrypt php-soap php-xml -y
$ vi /etc/php-fpm.d/www.conf
---
user = nginx
group = nginx
listen = 127.0.0.1:9000
---
$ systemctl enable php-fpm.service
$ systemctl start php-fpm.service
php
源使用了remi
的清华源,网上搜了一下,千篇一律的mirror.webtatic.com
源,但我自己测试,国内无法直接连接。
php
的fastcgi
使用了默认的127.0.0.1:9000
作为监听,当然也可以使用sock
方式
只需要把listen
改为unix:/var/run/php-fpm.sock;
即可
php-fpm
的user
和group
我这里都改为nginx
,如果在正常环境下建议改为www-data
3. 配置Nginx
编辑default.conf
,修改配置文件,并加入php-fpm
的内容,把文件路径修改为/var/www/html
,最后修改html
文件夹的权限和使用者
$ cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.backup
$ vi /etc/nginx/conf.d/default.conf
---
location / {
root /var/www/html;
index index.php index.html index.htm;
}
location = /50x.html {
root /var/www/html;
}
location ~ \.php$ {
root /var/www/html;
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
---
$ mkdir -p /var/www/html
$ chown -R nginx:nginx /var/www/html
$ systemctl restart nginx
同上因为
php-fpm
的user
和group
都是nginx
,所以这里把html
文件夹的所有者都改为nginx
4. 安装MariaDB
添加yum
源,并安装
$ vi /etc/yum.repos.d/MariaDB.repo
---
[mariadb]
name = MariaDB
baseurl = https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-10.2.18/yum/centos7-amd64/
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
---
$ yum install MariaDB-server -y
$ systemctl start mariadb
默认安装后
root
没有密码,可以使用mysql_secure_installation
命令可以重设root
密码
至此,LNMP环境全部搭建完毕!
实测,按照上述内容直接复制粘贴,全程创建仅需20分钟~~~