如何在Debian 10上安装Apache和PHP-FPM
时间:2019-05-19 01:26:37 来源:igfitidea点击:
FastCGI进程管理器(FPM)是FastCGI配置的替代品,具有多种增强功能。
这对高负载网站很有用。
本教程将在Debian 10 (Buster) Linux系统上安装和配置PHP-FPM和Apache。
安装Apache
Apache包在所有Debian系统的默认Apt存储库下都是可用的。
我们可以使用以下命令更新Apt缓存并安装Apache web服务器包:
sudo apt update sudo apt install apache2
安装PHP
PHP安装我们建议使用Ondřej Sury PPA,提供最新的Debian系统的PHP版本。
使用以下命令将PPA添加到Debian系统:
wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add - sudo echo "deb https://packages.sury.org/php/ buster main" | tee /etc/apt/sources.list.d/php.list
之后,安装所需的PHP版本。
对于使用PHP-fpm包的默认PHP版本安装,可以简单地执行以下命令。
apt update sudo apt install php php-fpm
注意:-当我们使用PHP-FPM时。
所有的PHP模块配置都位于 /etc/php/7.3/fpm/目录下。
安装以上软件包后,php7.3-fpm服务将自动启动。
我们可以通过在终端上键入下面的命令来确认。
**sudo systemctl status php7.3-fpm** ● php7.3-fpm.service - The PHP 7.3 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2019-12-03 10:01:54 UTC; 24min ago Docs: man:php-fpm7.3(8) Main PID: 9883 (php-fpm7.3) Status: "Processes active: 0, idle: 2, Requests: 3, slow: 0, Traffic: 0req/sec" Tasks: 3 (limit: 3587) Memory: 14.2M CGroup: /system.slice/php7.3-fpm.service ├─9883 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf) ├─9884 php-fpm: pool www └─9885 php-fpm: pool www Dec 03 10:01:54 theitroad-debian10 systemd[1]: Starting The PHP 7.3 FastCGI Process Manager... Dec 03 10:01:54 theitroad-debian10 systemd[1]: Started The PHP 7.3 FastCGI Process Manager.
Apache配置
现在启用Apache中多个PHP版本的配置所需的几个模块。
这些模块是将PHP FPM和FastCGI与Apache服务器集成所必需的。
sudo a2enmod alias proxy proxy_fcgi
让我们将Apache虚拟主机配置为使用FPM/FastCGI运行。
在本教程中,我们使用默认虚拟主机。
在文本编辑器中编辑虚拟主机的主机配置文件。
我们可以根据需求创建新的虚拟主机,所以请确保启用任何新的虚拟主机。
sudo vim /etc/apache2/sites-available/000-default.conf
文件内容:
<VirtualHost *:80> ServerName example.com ServerAlias www.example.com DocumentRoot /var/www/html <Directory /var/www/html> Options -Indexes +FollowSymLinks +MultiViews AllowOverride All Require all granted </Directory> <FilesMatch \.php$> # 2.4.10+ can proxy to unix socket SetHandler "proxy:unix:/run/php/php7.3-fpm.sock|fcgi://localhost" </FilesMatch> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
将更改保存到配置文件中,并重新启动Apache以重新加载更改。
sudo systemctl restart apache2.service
测试设置
使用 phpinfo()函数创建一个PHP脚本,并将其放置到服务器站点的根目录中。
可以直接使用下面的命令来做。
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
现在使用浏览器访问info.php。
http://服务器ip/info.php
总结
我们已经在Debian 10 (Buster) Linux上成功地使用PHP-FPM配置了Apache。