Debian 9 附带的 PHP 7.0 版本很快就会停止支持,并且不再接收安全更新。
在本教程中,我们将引导您完成在 Debian 9 服务器上安装 PHP 7.2 的步骤。我们还将向您展示如何配置 Apache 和 Nginx 来运行 PHP。
先决条件#
在开始本教程之前,请确保您以以下身份登录具有 sudo 权限的用户
.
在 Debian 9 上安装 PHP 7.2#
以下步骤描述了如何使用 Ondrej Sury 存储库安装 PHP 7.2。
-
首先,更新apt
软件包列表并安装所需的依赖项添加新存储库通过 HTTPS:
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common
-
首先使用以下命令导入存储库的 GPG 密钥卷曲命令
:
curl -fsSL https://packages.sury.org/php/apt.gpg | sudo apt-key add -
通过键入以下内容将 ondrej 的存储库添加到系统的软件存储库列表中:
sudo add-apt-repository "deb https://packages.sury.org/php/ $(lsb_release -cs) main"
-
现在我们已经在系统上启用了 ondrej 的存储库,我们可以通过指定要使用的版本来安装 PHP:
sudo apt update
sudo apt install php7.2-common php7.2-cli
-
通过运行以下命令来验证安装,该命令将打印 PHP 版本。
php -v
PHP 7.2.8-1+0~20180725124257.2+stretch~1.gbp571e56 (cli) (built: Jul 25 2018 12:43:00) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.8-1+0~20180725124257.2+stretch~1.gbp571e56, Copyright (c) 1999-2018, by Zend Technologies
配置 Apache 以运行 PHP#
如果您正在使用Apache作为您的 Web 服务器来安装 PHP 和 Apache PHP 模块,运行以下命令:
sudo apt install php7.2 libapache2-mod-php
安装软件包以启用 php7.2 模块后,只需重新启动 Apache 服务:
sudo systemctl restart apache2
配置 Nginx 来运行 PHP#
与阿帕奇不同的是,Nginx没有对处理 PHP 文件的内置支持,因此我们需要安装一个单独的应用程序,例如 PHP FPM(“fastCGI 进程管理器”)来处理 PHP 文件。
要安装 PHP 和 PHP FPM 软件包,请运行以下命令:
sudo apt install php7.2-fpm
安装软件包后,PHP FPM 服务将自动启动。您可以通过以下方式检查服务状态:
systemctl status php7.2-fpm
● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-08-30 21:06:53 UTC; 1min 4s ago
Docs: man:php-fpm7.2(8)
Main PID: 16791 (php-fpm7.2)
Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
CGroup: /system.slice/php7.2-fpm.service
├─16791 php-fpm: master process (/etc/php/7.2/fpm/php-fpm.conf)
├─16792 php-fpm: pool www
└─16793 php-fpm: pool www
您现在可以编辑域 Nginx 服务器块并添加以下行,以便 Nginx 可以处理 PHP 文件:
server {
# . . . other code
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
}
重启Nginx服务使新配置生效:
sudo systemctl restart nginx
安装 PHP 扩展#
我们可以通过安装额外的扩展来扩展 PHP 的核心功能。 PHP 扩展以包的形式提供,并且可以通过以下方式轻松安装:
sudo apt install php-[extname]
例如,如果您想安装 MySQL 和 GD PHP 扩展,您应该运行以下命令:
sudo apt install php7.2-mysql php7.2-gd
安装新的 PHP 扩展后,请不要忘记重新启动 Apache 或 PHP FPM 服务,具体取决于您的设置。
测试 PHP 处理#
要测试您的 Web 服务器是否已正确配置以进行 PHP 处理,请在以下目录中创建一个名为 info.php 的新文件/var/www/html
目录包含以下代码:
/var/www/html/info.php
保存文件,打开您选择的浏览器并访问http://your_server_ip/info.php
The phpinfo
函数将打印有关您的 PHP 配置的信息,如下图所示:
结论#
您已经在 Debian 9 服务器上成功安装了 PHP,并了解了如何配置 Web 服务器来处理 PHP 文件。
如果您有任何问题或反馈,请随时发表评论。