Як змінити режим PHP в FastPanel

74

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