Відповіді:
Використовуючи mod_php, кожен працівник Apache завантажує в нього весь інтерпретатор PHP. Оскільки Apache потребує одного робочого процесу за кожен вхідний запит, ви можете швидко отримати сотні працюючих Apache, кожен з яких завантажений власним PHP-перекладачем, витрачаючи величезні обсяги пам'яті.
(Зверніть увагу, це не зовсім так. Apache worker_mpm
дозволяє обслуговувати безліч запитів з одним потоковим працівником Apache. Однак, навіть у 2009 році це не рекомендований спосіб розгортання PHP через підозру на проблеми з нарізкою розширень PHP.)
Використання PHP в режимі fast_cgi (використання чогось типу spawn-fcgi з пакету lighttpd) має такі переваги
FastCGI означає, що біти php не виконуються в тому ж процесі, що й біти apache, на відміну від mod_php. Цей поділ може мати певні переваги, коли мова заходить про перезапуск сервера або розправу із запущеними програмами - у випадку mod_php це означає, що це "утікаючий" апарат апаша, але в fastcgi це просто процес, з яким розмовляє апаш, весь сервер не потрібно знімати.
Ще одна перевага, про яку ще не було сказано, - це той факт, що за допомогою mod_fcgid
(що є новою реалізацією для використання FastCGI на Apache) та suexec ви можете реалізувати установки, коли різні vhosts використовують різні користувачі Linux для виконання, що може бути справжньою перевагою безпеки для спільного хостингу szenario .
З mod_php усі vhosts діляться на одного користувача, який є користувачем Apache. Це може призвести до проблем безпеки.