如何在Debian 9上安装PHP
PHP版本7.0随附的Debian 9即将终止支持,并且不再收到安全更新。
在本教程中,我们将引导您完成在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
首先使用以下curl命令导入存储库的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#
与Apache不同,Nginx没有内置的处理PHP文件的支持,因此我们需要安装一个单独的应用程序,例如处理PHP文件的PHP FPM(“ fastCGI进程管理器”)。
要安装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
<?php
phpinfo();
保存文件,打开您选择的浏览器并访问 http://your_server_ip/info.php
的 phpinfo
函数将打印有关您的PHP配置的信息,如下图所示:
结论#
您已在Debian 9服务器上成功安装了PHP,并学习了如何配置Web服务器以处理PHP文件。
如果您有任何疑问或反馈,请随时发表评论。
PHP的Debian
这篇文章是how-to-install-lemp-stack-on-debian-9系列文章的一部分。本系列的其他文章:
•如何在Debian 9上安装Nginx,2018年8月27日•如何在Debian 9上安装PHP,2018年8月30日•如何在Debian 9上设置Nginx服务器块2018年10月4日•在Debian 9上,让我们加密来保护Nginx 2019年1月30日