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

Ни mod_substitute, ни mod_sed ничего не заменяют в Apache

Я запускаю Apache 2.4.7 на Ubuntu 14.04, и у меня есть оба mod_sed и mod_substitute установлен и включен через a2enmod. Я пытаюсь получить базовую замену вывода, но не получаю никаких результатов. У меня эта замена работает в Windows (как Apache 2.4, так и Apache 2.2) без проблем, но я не могу найти никакой комбинации для работы в Ubuntu. Вот что я использую:

<Location />
        AddOutputFilter Sed html
        AddOutputFilter SUBSTITUTE html
        AddOutputFilter Sed text/html
        AddOutputFilter SUBSTITUTE text/html
        AddOutputFilterByType Sed text/html
        AddOutputFilterByType SUBSTITUTE text/html
        OutputSed "s/harvest/HRRVST/g"
        Substitute "s/harvest/HRRVST/"
</Location>

Я включил все различные выходные фильтры, которые пробовал как по отдельности, так и все сразу. Я пробовал этот блок в основном apache2.conf а также в VirtualHost блок. Я пробовал оба Directory и Location блоки в обоих местах. Я подтвердил, что файл обрабатывается и я обращаюсь к правильному серверу в браузере.

Что мне нужно сделать, чтобы это сработало?

Если вам нужны оба модуля mod_deflate и mod_substitute можете добавить

SetOutputFilter SUBSTITUTE;DEFLATE

на ваш <Location>...</Location> и фильтры будут использоваться в этом порядке.

Оказывается, ответ mod_deflate был включен, и фильтры не работали.