cPanel :: Feature Request :: FastCGI Process Manager (FPM) SAPI

в 16:56, , рубрики: Apache, cpanel, linux, php, php-fpm, метки: , , ,

привет,
я думаю многие кто работал с панелью знают, что без кастылей не установить mod_fastcgi + php-fpm.
мне кажется если каждый с хабра зайдет и оставит свой голос в поддержку реализации данного функционала, то разработчики также не смогут оставить этого без внимания и включат ее в стандартный набор.

features.cpanel.net/responses/fastcgi-process-manager-fpm-sapi


небольшая вики для тех, кто не понимает, что здесь происходит:

Обработчик — зачем оно мне нужно:
Для того, чтобы запустить сайт на PHP, сервер должен интерпретировать код PHP. Он интерпретирует код, основанный на PHP библиотеке которую вы используете, например PHP 5. Обработчик PHP является тем, что на самом деле загружает библиотеки, так что они могут быть использованы для интерпретации. PHP обработчики определяют как PHP загружается на сервере.

Какие PHP обработчики имеются в cPanel:
Есть несколько различных обработчиков, которые могут быть использованы для загрузки PHP: CGI, DSO, suPHP, и FastCGI. Каждый обработчик использует различные реализации загрузки PHP. Каждая реализация влияет на производительность сервера Apache, потому что она определяет, как Apache обслуживает PHP.

и что??

Список PHP обработчиков:

DSO (mod_php)

DSO также известен как mod_php. DSO расшифровывается как: Dynamic Shared Object. Это старый, но, как правило, считается самым быстрым обработчиком. Он работает как модуль Apache. Это означает, что PHP скрипты будут исполняться как пользователь Apache, который является пользователем: «nobody».

DSO имеет два недостатка:
Во-первых, все файлы, созданные с помощью PHP скрипта будут иметь владельца «nobody». Он будет недоступен из Интернета. Сайты, на которые нужно загрузить файлы с помощью PHP, возможно могут возникнуть проблемы с permissions для файлов. Это проблема WordPress, загружать файлы через интерфейс WordPress или использовать функцию автоматического обновления, будет терпеть неудачу с DSO.

Вторым недостатком является проблема безопасности. Созданные файлы будут иметь владельца «nobody». Если хакер находит уязвимость в вашем скрипте PHP, он мог бы изменить или использовать файл, который имеет те же привилегии, важные системные файлы, которые также принадлежат «nobody».

CGI

CGI расшифровывается как: Common Gateway Interface. CGI обработчик будет обрабатывать PHP как CGI модуль, в отличие от модуля Apache. Тем не менее, если у вас есть suExec, это позволит вам увидеть, какой пользователь сделал запрос.

CGI метод предназначен в качестве запасного варианта, когда обработчик DSO недоступен. По собственной документации cPanel, это метод не является ни быстрым, ни безопасным, независимо от того, включен или нет suExec.

suPHP

suPHP читается как Single user PHP. suPHP также запускает PHP как CGI модуль, а не модуль Apache. Он отличается от CGI в том, что PHP скрипты, которые вызываются из веб будут работать под пользователем, который владеет ими. suPHP, как правило, обработчик по умолчанию и рекомендуется Cpanel для обслуживания PHP.

НО, тут одно НО:
Недостатком suPHP является то, что он создает гораздо более высокую нагрузку на процессор. Кроме того, с suPHP вы не можете использовать кэширование кода (например, eAccelerator или APC). Что создает дополнительную нагрузку и замедляет скорость обработки.

как они могли использовать его по умолчанию основным обработчиком??????

FastCGI

FastCGI (иначе: mod_fcgid или FCGI) является высокo производительным обновлением/вариантом CGI. Он имеет преимущества suPHP. Разница с FastCGI в том, что он может существенно сэкономить на производительности процессора и дать скорости, близкой к DSO. Он также может быть использован с eAccelerator или APC, которые могут способствовать дальнейшему ускорению загрузки PHP кода.

Недостатком FastCGI является (дословно):
mod_fcgid passes just one request to the FCGI server at a time while mod_fastcgi passes several requests at once, the latter is usually better for PHP, as PHP can manage several request using several threads and opcode caches like APC usually work only with threads and not with processes. This means that using mod_fcgid you end up having many PHP processes which all have their very own opcode cache.

bugs.debian.org/cgi-bin/bugreport.cgi?bug=504132#25

в общих словах такое же говно как и предыдущие, создает огромное количество отдельных процессов, которые при том что держат кеш кода по отдельности каждый в себе, да еще и умирают.

почитать и ключевые слова о том что нужно реализовать.

real FastCGI mod_fastcgi != mod_fcgid
www.fastcgi.com/drupal/node/6

php-fpm
php-fpm.org/about/

Автор: redbutcold

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js