Назад | Перейти на главную страницу

apache2 и php5: модуль или фильтр

В чем разница между модулем php5 (libapache2-mod-php5) и модулем фильтра php5 (libapache2-mod-php5filter) для apache2? Какой из них я должен использовать в какой среде?

libapache2-mod-php5filter не передает все методы HTTP-запроса вашему PHP-приложению - например, на запросы PUT и OPTIONS отвечает непосредственно Apache, а не ваше PHP-приложение.

Я предполагаю, что это ограничивает методы, которые обрабатываются PHP в качестве меры безопасности.

libapache2-mod-php5, с другой стороны, передает все запросы на обработку PHP.

Из https://launchpad.net/ubuntu/+source/php5/5.3.3-7ubuntu1, это сообщение:

"Если вам не нужна поддержка модуля-фильтра, вам, скорее всего, следует установить libapache2-mod-php5"

Для простоты развертывания и настройки, используйте libapache2-mod-php5.

Это действительно намного проще, но приводит к более высокому использованию памяти (поскольку PHP загружается для каждого запроса)

Для масштабируемости, используйте mod_fcgi и php-fpm.

Поскольку он запускает пул прослушивателей PHP, затем использует протокол FastCGI для связи между Apache и пулом PHP.

libapache2-mod-php5filter используется для внутренних php-фильтров apache. Я полагаю, вы могли бы запускать приложения таким образом, но это далеко не рекомендуется, поскольку это не является его намерением. mod-php5, с другой стороны, представляет собой модуль контента, который генерирует контент (из вашего php-приложения), и это то, что следует использовать.