如何在 Ubuntu 20.04 上为 Nginx 安装 PHP 8.1

介绍

PHP 可以说是使用最广泛的服务器端编程语言之一。它是开发动态和响应式网站时的首选语言。流行的 CMS 平台(例如 WordPress、Drupal 和 Magento)都基于 PHP。

PHP 8.1是 PHP 语言的重大更新。它包含许多新功能,包括枚举、只读属性、一流的可调用语法、纤程、交集类型、性能改进等等。

本文将向您展示如何在 Ubuntu 20.04 上安装 PHP 8.1 并将其与 Nginx 集成。

如何在 Ubuntu 20.04 上为 Nginx 安装 PHP 8.1

步骤 1. 添加 Ondrej PPA 存储库

在撰写本教程时,PHP 7.4 是 Ubuntu 20.04 存储库中的默认 PHP 版本。我们将使用 Ondrej PPA 存储库来安装最新版本的 PHP。该存储库包含多个 PHP 版本和 PHP 扩展。

首先,让我们更新您的 Ubuntu 系统软件包并安装一些依赖项,如下所示。

sudo apt update

sudo apt upgrade

# Allow apt to use the repository via HTTPS

sudo apt install ca-certificates apt-transport-https

sudo apt install software-properties-common

接下来,添加 Ondrej PPA。

sudo add-apt-repository ppa:ondrej/php

出现提示时,按 ENTER 键继续添加存储库。

步骤 2. 使用 Nginx 安装 PHP 8.1

如果您想在 Nginx 安装中使用 PHP 8.1,最推荐的步骤是安装 PHP-FPM 来处理 PHP 文件。您可以使用以下命令安装 PHP 和 PHP-FPM:

sudo apt install php8.1 php8.1-fpm

PHP-FPM 服务应该自动启动。您可以验证这一点,如图所示:

sudo systemctl status php8.1-fpm
sudo systemctl 状态 php8.1-fpm

为了让 Nginx 处理 PHP 文件,请使用文本编辑器(例如 nano)编辑默认的 Nginx 配置文件。

$ sudo nano /etc/nginx/sites-available/default

通过更新服务器部分来配置 Nginx 服务器块,如下所示:

server {

......

location ~ \.php$ {
include snippets/fastcgi-php.conf;

fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
}

最后,重新启动 Nginx Web 服务器以使更改生效。

sudo systemctl restart nginx

步骤 3. 安装 PHP 8.1 扩展

PHP 扩展是扩展 PHP 功能的库。这些扩展以包的形式存在,可以按如下方式安装:

sudo apt install php8.1-[extension-name]

例如,下面的示例安装 MySQL 扩展。

sudo apt install php8.1-mysql

步骤 4. 配置 PHP 8.1(可选)

现在,我们通过更改 php.ini 文件中的一些值来为 Web 应用程序配置 PHP。对于使用 Nginx 的 PHP 8.1 FPM,php.ini 位置将位于以下目录中。

sudo nano /etc/php/8.1/fpm/php.ini

按 F6 在编辑器内搜索并更新以下值以获得更好的性能。

upload_max_filesize = 32M
post_max_size = 48M
memory_limit = 256M
max_execution_time = 600
max_input_vars = 3000
max_input_time = 1000

修改 PHP 设置后,您需要重新启动 PHP-FPM 才能使更改生效。

sudo service php8.1-fpm restart

步骤 5. 测试 PHP 处理

要确认安装的 PHP 版本,请运行以下命令:

php -v

描述描述描述描述描述描述描述描述描述描述

此外,您可以在 /var/www/html 中创建示例 PHP 文件,如下所示:

sudo vim /var/www/html/info.php

粘贴以下行并保存文件。

<?php phpinfo(); ?>

最后,转到浏览器并浏览服务器的 IP 地址,如图所示。

http://服务器IP/info.php

您应该会看到显示的网页。

PHP信息页面

PHP多版本安装与使用

1.1 安装多个版本的PHP

sudo apt install php7.4 php7.4-fpm

sudo apt install php8.0 php8.0-fpm

1.2 检查已安装的PHP版本并设置默认PHP版本

sudo update-alternatives --config php
检查已安装的 PHP 版本

现在,我们已经安装了多个版本的PHP。我们可以将一个版本设置为我们想要使用的默认 PHP 版本。输入数字,您已成功更改 PHP 版本。

1.3 检查PHP版本

php -v

1.4 卸载PHP

要从您的设备卸载 PHP 版本(例如 PHP 7.4),请使用以下命令:

sudo apt remove --autoremove php7.4

发出上述命令后,PHP 7.4 将从您的设备中删除。要删除存储库,请使用以下命令:

sudo add-apt-repository --remove ppa:ondrej/php

结论

我们已经在VPS 上测试了本教程,因此它在我们的 Ubuntu VPS 主机上运行良好。我们希望本教程对如何安装 PHP 8.1 并将其与 Nginx Web 服务器轻松集成有所帮助。

THE END