Как настроить хостинг для сайта на PHP-FPM?

Как настроить хостинг для сайта на PHP-FPM?

Как настроить хостинг для сайта на PHP-FPM?

PHP-FPM (FastCGI Process Manager) — это альтернативный способ выполнения PHP-кода, который отличается повышенной производительностью и стабильностью по сравнению с традиционным модулем mod_php в Apache. Настройка хостинга для сайта на PHP-FPM включает в себя несколько этапов, начиная с установки необходимого программного обеспечения и заканчивая конфигурацией веб-сервера и самого PHP-FPM. В этой статье мы подробно разберём весь процесс настройки.

  1. Выбор хостинга

Прежде чем приступать к настройке, убедитесь, что ваш хостинг-провайдер поддерживает PHP-FPM. Большинство современных хостингов предлагают такую возможность, однако иногда требуется специальная настройка или обновление тарифа. Узнайте у своей техподдержки, доступен ли PHP-FPM на вашем текущем плане.

  1. Установка необходимых пакетов

Для начала необходимо установить PHP-FPM и сопутствующие пакеты. Мы будем рассматривать пример для операционной системы Ubuntu, но процесс аналогичен и для других дистрибутивов Linux.

sudo apt update

sudo apt install php-fpm php-mysql

Этот код установит PHP-FPM вместе с пакетом для работы с MySQL, если ваш сайт использует базы данных.

  1. Конфигурация PHP-FPM

После установки PHP-FPM необходимо настроить его параметры. Откройте файл конфигурации /etc/php/fpm/pool.d/www.conf и внесите изменения согласно вашим требованиям. Вот некоторые важные параметры, которые стоит проверить:

  • listen: Определяет адрес и порт, на котором будет слушать PHP-FPM. По умолчанию это сокет Unix (/run/php/php7.4-fpm.sock), но можно изменить на TCP-порт, если требуется.
  • pm: Определяет режим работы менеджера процессов. Возможные значения: static, dynamic, ondemand.
  • pm.max_children: Максимальное количество дочерних процессов, которые будут запущены.
  • pm.start_servers: Количество дочерних процессов, которые будут запущены при старте.
  • pm.min_spare_servers: Минимальное количество свободных дочерних процессов.
  • pm.max_spare_servers: Максимальное количество свободных дочерних процессов.

Пример конфигурации:

[global]

daemonize = yes

error_log = /var/log/php-fpm.log

emergency_restart_threshold = 10

emergency_restart_interval = 1m

process_control_timeout = 10s

[www]

user = www-data

group = www-data

listen = /run/php/php7.4-fpm.sock

listen.owner = www-data

listen.group = www-data

listen.mode = 0660

pm = dynamic

pm.max_children = 50

pm.start_servers = 5

pm.min_spare_servers = 2

pm.max_spare_servers = 15

  1. Конфигурация вебсервера

Следующим шагом является настройка веб-сервера для работы с PHP-FPM. Рассмотрим примеры для двух наиболее популярных веб-серверов: Apache и Nginx.

Apache

Для Apache необходимо включить модуль proxy_fcgi. Добавьте следующую строку в файл конфигурации Apache:

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

Затем создайте или измените виртуальный хост для вашего сайта, добавив следующие строки:

<VirtualHost *:80>

ServerName example.com

DocumentRoot /var/www/html

<FilesMatch \.php$>

SetHandler “proxy:unix:/run/php/php7.4-fpm.sock|fcgi://localhost/”

</FilesMatch>

</VirtualHost>

Nginx

Для Nginx добавьте следующий блок в конфигурационный файл вашего сайта:

server {

listen 80;

server_name example.com;

root /var/www/html;

location ~ \.php$ {

include fastcgi_params;

fastcgi_pass unix:/run/php/php7.4-fpm.sock;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

}

}

  1. Перезапуск сервисов

После внесения изменений в конфигурационные файлы необходимо перезапустить PHP-FPM и веб-сервер, чтобы новые настройки вступили в силу.

sudo systemctl restart php7.4-fpm

sudo systemctl restart apache2 # Или nginx, в зависимости от вашего веб-сервера

  1. Тестирование

Чтобы убедиться, что всё настроено правильно, создайте простой PHP-скрипт, отображающий информацию о конфигурации PHP:

<?php

phpinfo();

?>

Разместите этот скрипт в корневой директории вашего сайта и откройте его в браузере. Если страница с информацией о PHP открылась успешно, значит, настройка прошла корректно.

Заключение

Настройка хостинга для сайта на PHP-FPM — это относительно несложный процесс, который требует внимательности и знания основ администрирования серверов.

Правильно настроенный PHP-FPM может значительно повысить производительность вашего сайта и улучшить пользовательский опыт.

В этом контексте мы рекомендуем – SPRINTHOST за сочетание надежности, профессиональной поддержки и разумных цен. Примите мудрое решение сегодня, чтобы обеспечить процветание вашего веб-проекта завтра. Начните использовать – SPRINTHOST.

Добавить комментарий