如何在CentOS 8上安装LEMP服务器

LEMP是一组免费开源工具的软件堆栈,用于为高流量和动态网站提供动力。 LEMPLinuxNginx(发音为Engine X)、MariaDB / MySQLPHP的首字母缩写。

Nginx是一个开源、强大且高性能的Web服务器,也可以兼做反向代理。 MariaDB是用于存储用户数据的数据库系统,PHP是用于开发和支持动态网页的服务器端脚本语言。

相关文章: 如何在CentOS 8上安装LAMP服务器

在本文中,您将学习如何在CentOS 8 Linux发行版上安装LEMP服务器。

第1步: 在CentOS 8上更新软件包

首先,通过运行以下dnf命令来更新CentOS 8 Linux的软件仓库和软件包。

$ sudo dnf update
Update CentOS 8 Packages

第2步: 在CentOS 8上安装Nginx Web服务器

完成软件包更新后,使用简单命令安装Nginx

$ sudo dnf install nginx
Install Nginx on CentOS 8

代码片段显示Nginx安装顺利,没有任

Nginx Installation on CentOS 8

安装完成后,配置Nginx以在启动时启动,并通过执行命令验证Nginx是否正在运行。

$ sudo systemctl enable nginx
$ sudo systemctl start nginx
$ sudo systemctl status nginx
Verify Nginx Service Status

要检查安装的Nginx版本,请运行以下命令。

$ nginx -v
Check Nginx Version

如果您好奇想要了解更多关于Nginx的信息,请执行以下rpm命令

$ rpm -qi nginx 
Check Nginx Info

要确认您的Nginx服务器是否正在运行,请在浏览器中输入系统的IP地址并按下ENTER键。

http://server-IP

您应该能够看到一个“Welcome to Nginx”网页,这表明您的Nginx Web服务器正在运行。

Check Nginx Web Page

第三步:在CentOS 8上安装MariaDB

MariaDBMySQL的一个免费开源分支,提供了最新功能,使其成为MySQL的更好替代品。要安装MariaDB,请运行以下命令。

$ sudo dnf install mariadb-server mariadb
Install MariaDB in CentOS 8

要使MariaDB在启动时自动启动,请运行。

$ sudo systemctl enable mariadb

要启动MariaDB服务器,请运行以下命令。

$ sudo systemctl start mariadb

安装后,请使用以下命令检查其状态。

$ sudo systemctl status mariadb
Verify MariaDB Service Status

MariaDB数据库引擎是不安全的,任何人都可以在没有凭据的情况下登录。要加固MariaDB并确保最小化未经授权访问的机会,请运行该命令。

$ sudo mysql_secure_installation

以下是一系列提示。第一个提示要求您设置根密码。按ENTER,然后键入Y以指定根密码。

Secure MariaDB Server

设置密码后,回答其余问题以删除匿名用户,删除测试数据库,并禁用远程根登录。

Secure MariaDB Installation Summary

完成所有步骤后,您可以登录到MariaDB服务器并检查MariaDB服务器版本信息(提供您在保护服务器时指定的密码)。

$ mysql -u root -p
Check MariaDB Version

第4步:在CentOS 8上安装PHP 7

最后,我们将安装最后一个组件LEMP堆栈,即PHP,这是一种常用于开发动态网页的脚本网页编程语言。

撰写本指南时,最新版本为 PHP 7.4。我们将使用Remi存储库安装此版本。Remi存储库是一个免费存储库,提供最新的尖端软件版本,这些版本在CentOS上默认情况下不可用。

运行以下命令安装EPEL存储库。

$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

然后,继续并使用以下命令安装yum-utils并启用remi存储库。

$ sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

接下来,搜索可用的PHP模块以进行安装。

$ sudo dnf module list php

如下所示,输出将显示可用的PHP模块、流和安装配置文件。从下面的输出中,我们可以看到当前安装的版本是PHP 7.2,由方括号括起的字母d表示。

List PHP Module in CentOS 8

从输出中,我们还可以看到最新的PHP模块是PHP 7.4,我们将要安装它。但首先,我们需要重置PHP模块。因此运行以下命令。

$ sudo dnf module reset php
Reset PHP Module in CentOS 8

接下来,通过运行以下命令启用PHP 7.4模块。

$ sudo dnf module enable php:remi-7.4
Enable PHP Module in CentOS 8

启用PHP 7.4模块后,最后安装PHPPHP-FPMFastCGI进程管理器)和相关的PHP模块,使用以下命令。

$ sudo dnf install php php-opcache php-gd php-curl php-mysqlnd

现在,验证已安装的版本。

$ php -v 
Check PHP Version in CentOS 8

接下来,启用并启动php-fpm。

$ sudo systemctl enable php-fpm
$ sudo systemctl start php-fpm

要检查其状态,请执行以下命令。

$ sudo systemctl status php-fpm
Check PHP-FPM Status

另一件事是,默认情况下,PHP-FPM配置为以Apache用户运行。但由于我们正在运行Nginx Web服务器,我们需要将其更改为Nginx用户。

因此打开文件/etc/php-fpm.d/www.conf

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

找到这两行。

user = apache
group = apache

现在将两个值都更改为Nginx。

user = nginx
group = nginx
Configure PHP-FPM

保存并退出配置文件。

然后重新启动NginxPHP-FPM以使更改生效。

$ sudo systemctl restart nginx
$ sudo systemctl restart php-fpm

第5步:测试PHP信息

默认情况下,Nginx的网页目录文件位于/usr/share/nginx/html/路径。为了测试PHP-FPM,我们将创建一个名为info.php的PHP文件,并粘贴下面的行。

<?php
 phpinfo();
?>

保存并退出文件。

启动您的浏览器,在URL栏中输入您的Web服务器IP地址。

http://server-ip-address/info.php
Check PHP-FPM Info

如果一切顺利,您将看到关于您正在运行的PHP版本以及其他指标的信息。

就是这样,朋友们!您已成功在CentOS 8上安装了LEMP服务器堆栈。作为安全预防措施,您可能希望删除info.php文件,以防止黑客从您的Nginx服务器获取信息。

Source:
https://www.tecmint.com/install-lemp-on-centos-8/