APACHE PHP FPM / FASTCGI

PHP-FPM (FastCGI Process Manager) является альтернативной версией PHP FastCGI. Он предоставляет некоторые дополнительные функции, такие как Adaptive process spawning, который полезен для сайтов. Эта статья поможет вам установить Apache с PHP-FPM/FastCGI в систему Ubuntu.

sudo apt update

sudo apt install apache2 libapache2-mod-fastcgi

sudo apt install php7.2 php7.2-fpm

Примечание: Когда вы используете PHP-FPM, все конфигурации модулей PHP находятся в каталоге /etc/php/7.2/fpm. После установки пакетов из команды выше, у вас автоматически запустится сервис php7.2-fpm. Вы можете убедиться в этом, выполнив команду приведенную ниже:

sudo systemctl status php7.2-fpm

 status php7.2 fpm

Теперь включите несколько модулей, необходимых для конфигурации версий PHP с Apache. Эти модули необходимы для интеграции PHP FPM и FastCGI с сервером Apache.

sudo a2enmod actions fastcgi alias proxy_fcgi

sudo systemctl restart apache2

Давайте настроим Apache VirtualHost для работы с FPM/FastCGI. Для этой статьи мы используем VirtualHost по умолчанию. Измените файл конфигурации VirtualHost в текстовом редакторе. Вы можете создать новый VirtualHost согласно вашим требованиям, поэтому обязательно включите новый VirtualHost.

sudo nano /etc/apache2/sites-available/000-default.conf

ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/html


Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted



# 2.4.10+ can proxy to unix socket
SetHandler "proxy:unix:/var/run/php/php7.2-fpm.sock|fcgi://localhost/"

# Else we can just use a tcp socket:
#SetHandler "proxy:fcgi://127.0.0.1:9000"


ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

Сохраните изменения в файле конфигурации и перезапустите Apache, чтобы применить изменения.

sudo systemctl restart apache2

Создайте PHP-скрипт с функцией phpinfo() и поместите его в корневой каталог сервера. Для этого используйте команду приведенную ниже:

echo "<? phpinfo(); ?>" > /var/www/html/info.php

Откройте веб-браузер, чтобы получить доступ к info.php, используя IP-адрес сервера (для VirtualHost по умолчанию) для вашего настроенного домена в Apache VirtualHost.

ApacheFPM FastCGI