Mod_php vs cgi vs fast-cgi
Я пытался понять точный смысл/цель загрузки php в качестве модуля apache и остальных.
Когда php установлен как модуль apache, что именно происходит? Например, чтение файла php-ini происходит каждый раз, когда приходит запрос php или когда модуль php загружается один?
Ответы
Ответ 1
php.ini читается, когда модуль PHP загружается как в mod_php, FastCGI, так и в FPM. В обычном режиме CGI файл конфигурации должен быть прочитан во время выполнения, потому что нет каких-либо предварительных процессов любого типа.
Я думаю, что единственным реальным преимуществом использования PHP в качестве модуля внутри веб-сервера является то, что конфигурация может быть проще. Вы получаете намного лучшую производительность при запуске в режиме FastCGI или FPM и можете использовать поточный или evented (вместо разветвленного) Apache или когда вы можете полностью выбросить Apache.
Ответ 2
Эта ссылка может помочь: http://2bits.com/articles/apache-fcgid-acceptable-performance-and-better-resource-utilization.html
Заключение
Если чистая скорость - это то, что вам нужно, тогда оставайтесь с mod_php.
Однако для лучшего использования ресурсов и эффективности рассмотрите возможность перехода на fcgid.
Ответ 3
php.ini считывается, когда модуль загружается в случае модуля Apache. PHP CGI использует исполняемый файл php-интерпретатора, как и любая другая оболочка script. Поскольку в каждом вызове не задействовано государство, файл конфигурации должен читаться каждый раз в случае CGI.