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
Теперь включите несколько модулей, необходимых для конфигурации версий 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.