如何在CentOS 8上安裝LEMP服務器

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

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

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

本文将向您介绍如何在 CentOS 8 Linux 发行版上安装 LEMP 服务器。

第一步:更新 CentOS 8 上的软件包

首先,在 CentOS 8 Linux 上更新仓库和软件包,运行以下 dnf 命令

$ sudo dnf update
Update CentOS 8 Packages

第二步:在 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伺服器正在運行,只需在瀏覽器的URL欄位輸入系統的IP位址,然後按下ENTER鍵。

http://server-IP

你應該能夠看到一個“Welcome to Nginx”的網頁,這表示你的Nginx網頁伺服器已經啟動並運行。

Check Nginx Web Page

步驟3:在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

以下是一系列提示。第一个提示要求您设置 root 密码。按ENTER,输入Y表示,以指定 root 密码。

Secure MariaDB Server

设置密码后,回答剩下的问题以删除匿名用户、删除测试数据库并禁用远程 root 登录。

Secure MariaDB Installation Summary

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

$ mysql -u root -p
Check MariaDB Version

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

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

在撰写本指南时,最新版本为 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-repository。

$ 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 Process Manager)及相關 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 網絡伺服器,我們需要將其更改為 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,我們將創建一個PHP文件info.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/