Есть несколько разных php "оберток" (?). Какие между ними различия? Пытался погуглить, но информации не нашел. (mod-php не доступен в Google).
Почему я могу предпочесть одно другому?
Вопросы немного странные, непонятно, спрашиваете ли вы только о PHP или ваш вопрос более общий.
Я дам вам краткий обзор со стороны PHP.
Во-первых, два протокола:
Сценарии CGI - это способ запуска сценария на стороне сервера при поступлении HTTP-запроса; это не имеет ничего общего с PHP
FastCGI - это «лучший CGI» - CGI, как известно, медленный, Fast CGI - это другой подход с гораздо более быстрыми результатами; это тоже не имеет ничего общего с PHP.
Теперь о вещах, связанных с PHP:
mod_php запускает PHP как модуль Apache - то есть запрос PHP выполняется под процессом Apache со всем, что с ним связано - процессы Apache определяются конфигурацией Apache, PHP запускается с разрешением Apache и т. д.
PHP-FPM реализация PHP FastCGI; PHP-FPM работает как автономный сервер FastCGI, и Apache подключается к серверу с помощью модуля Apache, обычно mod_fcgid или mod_fastcgi; Я лично считаю, что это намного лучше, чем запускать как mod_php, но это зависит от ваших требований и к тому же немного сложнее; в этой конфигурации права доступа, связанные процессы и все выполняется под конфигурацией PHP, пользователем PHP и т. д. & Apache подключается к PHP как к серверу; в этой конфигурации также возможно иметь пул серверов PHP и иметь сервер PHP на физически другом компьютере, чем Apache. Они говорят, что это почти так же быстро, как при использовании модуля Apache, и есть преимущества лучшего контроля над конфигурацией PHP.
SuPHP - в основном используется для решения некоторых проблем mod_php, связанных с разрешениями; с mod_php сценарии PHP запускаются под пользователем / группой Apache; mod_suphp может запускать скрипты от разных пользователей; Я никогда не использовал его, PHP-FPM теперь должен быть намного лучшим выбором
Итак, в основном: