如何在 CentOS 8 上安装 Linux、Nginx、MySQL、PHP (LEMP) 协议栈 [快速入门]

介绍

在本教程中,您将在 CentOS 8 服务器上安装 LEMP 堆栈.虽然 MySQL 可从 CentOS 8 中的默认存储库中使用,但本指南将通过设置 LEMP 堆栈的过程来使用 MariaDB作为数据库管理系统。

对于本教程的更详细版本,以及每个步骤的更多解释,请参阅 如何在CentOS 8上安装Linux,Nginx,MySQL,PHP(LEMP)堆栈

前提条件

要遵循本指南,您需要作为sudo用户访问 CentOS 8 服务器。

步骤1:安装 Nginx

安装nginx包:

1sudo dnf install nginx

安装完成后,运行以下命令来启用和启动服务器:

1sudo systemctl start nginx

如果「firewalld」已啟用,您需要執行以下命令,以便在「80」端口(HTTP)上允許外部存取:

1sudo firewall-cmd --permanent --add-service=http

重新加载防火墙配置,以便更改生效:

1sudo firewall-cmd --reload

随着新增的防火墙规则,您可以通过从您的 Web 浏览器访问服务器的公共 IP 地址或域名来测试服务器是否正在运行。

Default Nginx Page CentOS 8

第2步:安装MariaDB

我们现在将安装 MariaDB,一个由社区开发的原始MySQL服务器的叉子由Oracle。

1sudo dnf install mariadb-server

安装完成后,启用并启动 MariaDB 服务器:

1sudo systemctl start mariadb

为了提高数据库服务器的安全性,建议您运行预先安装的安全脚本 MariaDB。

1sudo mysql_secure_installation

第一个提示将要求您输入当前的 数据库根 密码. 因为您刚刚安装了MariaDB,尚未进行任何配置更改,此密码将是空的,所以只需在提示中按ENTER

接下来的提示会问你是否想要设置一个 数据库根 ** 密码. 因为 MariaDB 对于 ** root 用户使用了一种特殊的身份验证方法,通常比使用密码更安全,所以你不需要现在设置这个密码。

从那里,您可以按Y,然后按ENTER,以接受所有后续问题的默认值。

步骤 3 – 安装 PHP-FPM

要安装php-fpmphp-mysql包,请运行:

1sudo dnf install php-fpm php-mysqlnd

安装完成后,您需要编辑 /etc/php-fpm.d/www.conf 文件以调整几个设置。

1sudo dnf install nano

现在,使用nano或您所选择的编辑器打开/etc/php-fpm.d/www.conf配置文件:

1sudo nano /etc/php-fpm.d/www.conf

寻找用户指令.如果你使用nano,你可以按CTRL+W来搜索打开文件中的这些术语。

1[label /etc/php-fpm.d/www.conf]
23; RPM: apache user chosen to provide access to the same directories as httpd
4user = nginx
5; RPM: Keep a group allowed to write in log dir.
6group = nginx
7

保存并关闭文件,当你完成编辑。

要启用并启动php-fpm服务,请运行:

1sudo systemctl start php-fpm

最后,重新启动 Nginx Web 服务器,以便加载由php-fpm安装创建的配置文件:

1sudo systemctl restart nginx

步骤 4 – 使用 Nginx 测试 PHP

在CentOS 8上,默认的php-fpm安装会自动创建配置文件,允许您的 Nginx Web 服务器在位于 /usr/share/nginx/html 的默认文档根中处理 .php’ 文件。

我们只需要修改 Nginx 文档根上的默认所有者和组,以便您可以使用正常的非根系统用户在该位置创建和修改文件:

1sudo chown -R sammy.sammy /usr/share/nginx/html/

/usr/share/nginx/html目录中创建一个名为info.php的新PHP文件:

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

以下PHP代码将显示有关当前在服务器上运行的PHP环境的信息:

1[label /usr/share/nginx/html/info.php]
2<?php
3
4phpinfo();

将此内容复制到您的info.php文件,并不要忘记在完成后保存它。

现在我们可以测试我们的网页服务器是否能够正确地显示由PHP脚本生成的内容。 进入您的浏览器并访问您的服务器主机名或IP地址,然后是 /info.php:

1http://server_host_or_IP/info.php

你会看到一个类似于此的页面:

CentOS 8 default PHP info

相关教程

以下是有关本教程的更多详细指南的链接:

Published At
Categories with 技术
comments powered by Disqus