mod_php против cgi против fast-cgi

Я пытался понять точное значение / цель загрузки php как модуль apache против остальных.

Когда php установлен как модуль apache, что именно происходит? Например, происходит ли чтение файла php-ini каждый раз, когда приходит запрос php, или когда модуль php загружается один?

3 ответа

Решение

php.ini читается, когда модуль PHP загружен в mod_php, FastCGI и FPM. В обычном режиме CGI файл конфигурации должен быть прочитан во время выполнения, потому что нет никаких предварительно обработанных процессов любого вида.

Я думаю, что единственным реальным преимуществом использования PHP как модуля внутри веб-сервера является то, что конфигурация может быть проще. Вы получаете гораздо лучшую производительность, когда запускаете его в режиме FastCGI или FPM и можете использовать многопоточный (или разветвленный) Apache, или когда вы можете полностью исключить Apache.

Эта ссылка может помочь: http://2bits.com/articles/apache-fcgid-acceptable-performance-and-better-resource-utilization.html

Заключение

Если вам нужна чистая скорость, оставайтесь с mod_php.

Однако для лучшего использования ресурсов и повышения эффективности рассмотрите возможность перехода на fcgid.

php.ini читается, когда модуль загружается в случае модуля Apache. PHP CGI использует исполняемый файл интерпретатора php, как любой другой скрипт оболочки. Поскольку в каждом вызове нет состояния, файл конфигурации должен быть прочитан каждый раз в случае CGI.

Другие вопросы по тегам