如何在AlmaLinux上安装LEMP堆栈
LEMP 堆栈是一系列软件,其中包含服务网站、显示动态内容以及从数据库存储或检索数据所需的一切。该软件全部采用 LEMP 缩写,即 Linux 操作系统、NGINX Web 服务器、MySQL 数据库(或 MariaDB)和 PHP 编程语言。
如果您已经安装了AlmaLinux或从CentOS迁移到AlmaLinux,那么您已经满足了第一个要求。接下来,您只需启动并运行 LEMP 堆栈即可。在本指南中,我们将展示在AlmaLinux上安装LEMP堆栈的分步说明。
请注意,也可以在 AlmaLinux 上安装 LAMP 堆栈,这与 LEMP 非常相似,只是它包含 Apache 作为 Web 服务器而不是 NGINX。
在本教程中您将学习:
如何在AlmaLinux上安装所有LEMP必备包
如何保护 MariaDB 数据库
如何启动 NGINX 和 MariaDB 服务
如何打开 HTTP 和 HTTPS 防火墙端口
LEMP堆栈在AlmaLinux上成功运行
在AlmaLinux上安装和配置LEMP包
按照以下步骤在 AlmaLinux 上设置和配置 NGINX、MariaDB 和 PHP。
注意
在本指南中,我们将安装 MariaDB 而不是官方 MySQL 服务器包。 MariaDB 是 MySQL 的开源实现,工作原理完全相同,但它具有更多功能。如果您不想安装 MariaDB,请随意安装 MySQL。
执行以下命令,使用 dnf 包管理器安装 NGINX、MariaDB、PHP 和一些其他 PHP 模块。
# dnf install nginx mariadb-server php-mysqlnd php-fpm
如果您在AlmaLinux上启用了默认防火墙,则必须打开端口80和443以用于传入Web服务器的HTTP和HTTPS连接。
# firewall-cmd --permanent --zone=public --add-service=http # firewall-cmd --permanent --zone=public --add-service=https # firewall-cmd --reload
启动 NGINX Web 服务器和 MariaDB 服务:
# systemctl start mariadb # systemctl start nginx
启用 MariaDB 和 NGINX 在系统重启后启动:
# systemctl enable mariadb # systemctl enable nginx
执行以下命令以保护 MariaDB 安装并设置 root 密码。会有一些提示需要完成。建议您在出现问题时禁用远程 root 登录,除非您有某些需要它的情况。
# mysql_secure_installation
为了确认我们的 Web 服务器可以访问并且 PHP 能够按预期工作,我们可以在
/usr/share/nginx/html
目录中创建一个名为info.php
的文件。该文件应包含以下行,用于验证 PHP 是否正常工作。<?php phpinfo(); ?>
更改Web服务器目录的权限,并更改SELinux安全上下文。
# chown -R nginx:nginx //usr/share/nginx/html/* # chcon -t httpd_sys_rw_content_t /usr/share/nginx/html/ -R
在浏览器中,打开 URL
http://localhost/info.php
导航到我们创建的测试页面。您应该会看到如下图所示的结果。到目前为止,我们刚刚安装了一个基本的 LEMP 堆栈。根据您要使用的应用程序,您可能还需要安装其他 PHP 模块。要查看可从系统包管理器安装的模块列表,请在终端中执行以下命令。
# dnf search php-
然后,要安装附加包,请执行:
# dnf install PACKAGENAME
安装软件包后,重新加载 NGINX 服务以使更改生效:
# systemctl reload nginx
LEMP堆栈在AlmaLinux上成功运行
结束语
在本指南中,我们了解了如何在AlmaLinux上安装和配置LEMP堆栈。这涉及安装各个软件包,即 NGINX、MariaDB 和 PHP。您的系统现在已准备好提供和存储动态 Web 内容。