Як змінити режим PHP в FastPanel
FASTPANEL дозволяє для кожного сайту окремо вибрати один із чотирьох режимів роботи PHP:
-
PHP як модуль Apache
-
PHP-FPM
-
FastCGI (FCGI)
-
CGI
Щоб вибрати режим PHP, відкрийте меню “Settings” у Site card. Зверніть увагу: будь-який режим, окрім “Apache module”, дає можливість використовувати альтернативну версію PHP — за умови, що вона встановлена в панелі.
Який режим краще обрати?
Вибір залежить насамперед від того, чи використовується на сайті .htaccess, і чи потрібна альтернативна версія PHP.
-
Якщо сайт не використовує .htaccess, рекомендується обирати PHP-FPM.
-
Якщо сайт використовує .htaccess і підходить основна (системна) версія PHP — обирайте PHP як модуль Apache.
-
Якщо сайт використовує .htaccess, але потрібна альтернативна версія PHP — оптимальний варіант FastCGI.
-
Режим CGI краще розглядати як резервний варіант — якщо з певної причини сайт працює некоректно в інших режимах.
Нижче — коротко та по суті про кожен режим.
PHP як модуль Apache
У цьому режимі використовується системна версія PHP за замовчуванням. Схема роботи така: Nginx виступає як frontend-сервер, а Apache — як backend, і обробка PHP-скриптів відбувається через модуль mod_php.
Apache працює в режимі MPM ITK, завдяки чому кожен сайт може виконуватися від окремого користувача, що зручно з погляду ізоляції.
FastCGI
Цей режим дозволяє перемикатися між версіями PHP. Як і в попередньому варіанті, Nginx залишається frontend-сервером, а Apache — backend-сервером, але PHP-скрипти обробляються через mod_fcgid.
Особливість FastCGI в тому, що процеси PHP можуть залишатися в пам’яті та обробляти кілька запитів підряд. Завдяки цьому зменшуються накладні витрати на запуск, а обробка PHP-скриптів стає швидшою, що позитивно впливає на швидкість роботи сайту.
Режим FastCGI зазвичай рекомендують, коли для сайту потрібна альтернативна версія PHP.
PHP-FPM
Режим PHP-FPM також підтримує вибір різних версій PHP, але архітектура тут інша: backend-частину виконує PHP-FPM, а Nginx залишається frontend-сервером.
Важливо врахувати нюанс: у режимі PHP-FPM файли .htaccess не обробляються, тому всі правила й налаштування з .htaccess потрібно перенести в конфігурацію Nginx.
CGI
Цей режим теж дозволяє використовувати альтернативні версії PHP, але працює інакше: Apache виступає як backend і для кожного запиту створює окремий PHP-процес. Через це CGI зазвичай менш ефективний за продуктивністю, тому його найчастіше використовують лише тоді, коли інші режими з певних причин не підходять.