如何在 CentOS 8/RHEL8 上部署 LEMP 环境

什么是 LEMP 环境

LEMP 是 Linux,Nginx (发音读作 engine X),MariaDB/MySQL 和 PHP 打包而成的开源服务器环境。在这个环境中,Linux 是操作系统,Nginx 是 web 服务器,MariaDB/MySQL 是数据库服务器,PHP 是负责生成动态网页的服务器端脚本语言。

1. 安装 Nginx

第一步: 使用如下命令安装 Nginx

yum install nginx -y

第二步: 启动并开启 Nginx 服务

systemctl start nginx
systemctl enable nginx

第三步: 查看 Nginx 状态

systemctl status nginx

Nginx status.PNG

查看 Nginx 版本

nginx -v

第四步: 访问 Nginx

如果你是在本地的 CentOS 8/RHEL 8 的虚拟机部署 LEMP,则只需输入 127.0.0.1 或者 localhost 访问 Nginx。

如果 RHEL 8/CentOS 8 运行在远程的服务器,则输入服务器的主机名或 IP 地址。

备注 在访问远程服务器上的 Nginx 前,需要现在防火墙中放行 http 和 https 服务。

firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
systemctl reload firewalld

ngnix first page.PNG

最后,我们需要把网页目录的所有者设置为 nginx,默认情况下,网页目录的所有者为 root。

chown nginx:nginx /usr/share/nginx/html -R

2. 安装 MariaDB 服务器

第一步 : 使用如下命令安装 MariaDB:

yum install mariadb-server mariadb -y

第二步: 启动并开启 MariaDB 服务器:

systemctl start mariadb
systemctl enable mariadb

第三步: 检查 MariaDB 服务器的状态

systemctl status mariadb

mariadb status.PNG

第四步: 运行安装设置脚本

mysql_secure_installation

maridb password creationPNG.PNG

Step 5: 进入 MariaDB 服务器

mysql -u root -p

要退出,可执行:

exit;

3. 安装 PHP-FPM

第一步 : 使用如下命令安装 PHP 和相关模块:

yum install php php-mysqlnd php-fpm php-opcache php-gd php-xml php-mbstring -y

第二步: 启动并开启 PHP 服务

systemctl start php-fpm
systemctl enable php-fpm

第三步: 检查 PHP-FPM 状态

systemctl status php-fpm

phpstatus.PNG

第四步: 修改配置文件

/etc/php-fpm.d/www.conf

默认情况下,PHP-FPM 以 apache 用户的身份运行,由于我们使用的是 Nginx 服务器,我们需要修改:

user = nginx
group = nginx

重启 PHP-FPM 让改动生效:

systemctl reload php-fpm

Step 5: 测试 PHP

在网页目录下创建一个文件:

/usr/share/nginx/html/info.php

并将如下代码粘贴到文件中:

<?php phpinfo(); ?>

保存并关闭文件。如果你的 LEMP 环境部署在本地的 RHEL 8/CentOS 8 服务器上,输入 127.0.0.1/info.phplocalhost/info.php 来访问测试文件。

如果 RHEL 8/CentOS 8 运行在远程的服务器,则输入 服务器 IP 地址/info.php 来访问测试文件。

phphome page.PNG

排错

1. 如果访问测试文件,浏览器并未输出 PHP 信息,而是弹出下载 info.php 文件,你可能需要重启 Nginx 和 PHP-FPM。

sudo systemctl restart nginx php-fpm

2. 如果在 yum 安装的过程中遇到诸如 Could not resolve host:mirrorlist.centos.org; 的问题,这说明你你的 DNS 服务器配置有误,或你的服务器网络配置信息不正确。

要修复 DNS 服务器信息,打开 /etc/resolv.conf 并找到

nameserver 9.9.9.9

你可以尝试其他的 DNS 主机,例如 8.8.8.8 或者 8.8.4.4

关联文章