Я запускаю apache с mod_pagespeed на fedora (14) и получаю сообщение об ошибке:
[error] an unknown filter was not added: DEFLATE
много. Я знаю, что это потому, что mod_deflate не загружен, но это хорошо, я не хочу его загружать (балансировщик нагрузки позаботится о сжатии и т. Д., И мы получаем неожиданные результаты, когда deflate также находится на веб-серверах)
Однако я не могу понять, где на него ссылаются, я использовал эту команду для просмотра всех файлов в / etc / httpd
find . -type f -exec grep -li "deflate" {} \;
Обновить эта команда также выполняет поиск в подкаталоге conf.d - и я использовал аналогичную вещь для просмотра всех файлов .htaccess на сервере
find . -type f -name ".htaccess" -exec grep -li "deflate" {} \;
и единственные ссылки находятся в файлах .conf, и они закомментированы #
(apache был перезапущен) Обновить например
# LoadModule deflate_module modules/mod_deflate.so
Как я могу найти ссылку на нее и удалить ее?
Обновить Я пытался бежать a2enmod
и a2dismod
, но таких команд нет. yum install a2dismod
не находит ничего для установки. Имена этих команд и /etc/apache2/mods-enabled
каталог, с которым я сталкивался только с ubuntu, я не знаю эквивалентных команд fedora / fedora-installed-via-yum
список установленных модулей (но поскольку ошибка заключается в том, что фильтр неизвестен, я не уверен, что ищу? Если бы mod_deflate был в этом списке, я бы точно не получил ошибку?)
Loaded Modules:
core_module (static)
mpm_prefork_module (static)
http_module (static)
so_module (static)
auth_basic_module (shared)
auth_digest_module (shared)
authn_file_module (shared)
authn_alias_module (shared)
authn_anon_module (shared)
authn_dbm_module (shared)
authn_default_module (shared)
authz_host_module (shared)
authz_user_module (shared)
authz_owner_module (shared)
authz_groupfile_module (shared)
authz_dbm_module (shared)
authz_default_module (shared)
ldap_module (shared)
authnz_ldap_module (shared)
include_module (shared)
log_config_module (shared)
logio_module (shared)
env_module (shared)
ext_filter_module (shared)
mime_magic_module (shared)
expires_module (shared)
headers_module (shared)
usertrack_module (shared)
setenvif_module (shared)
mime_module (shared)
dav_module (shared)
status_module (shared)
autoindex_module (shared)
info_module (shared)
dav_fs_module (shared)
vhost_alias_module (shared)
negotiation_module (shared)
dir_module (shared)
actions_module (shared)
speling_module (shared)
userdir_module (shared)
alias_module (shared)
substitute_module (shared)
rewrite_module (shared)
proxy_module (shared)
proxy_balancer_module (shared)
proxy_ftp_module (shared)
proxy_http_module (shared)
proxy_ajp_module (shared)
proxy_connect_module (shared)
cache_module (shared)
suexec_module (shared)
disk_cache_module (shared)
cgi_module (shared)
version_module (shared)
cband_module (shared)
dnssd_module (shared)
pagespeed_module (shared)
perl_module (shared)
php5_module (shared)
python_module (shared)
ssl_module (shared)
Сообщение об ошибке, которое вы получаете, на самом деле означает, что ваша текущая конфигурация apache нуждается в mod-deflate
быть загруженным. Ваш apache хочет использовать mod-deflate
как фильтр обработки, либо исходящий, либо входящий фильтр.
Увидеть документация apache о фильтрах.
Поскольку вы не хотите использовать mod-deflate
вы отключили его, и вывод DUMP_MODULES
не показывает это. Теперь вам нужно найти инструкции по фильтрам, в которых используется mod-deflate
и деактивировать их. Ищем ключевое слово DEFLATE
это хорошее начало, но также ищите INFLATE
(mod-deflate
также используется для распаковки тела входящего ответа). И, если ничего не найдешь, даже ищу Filter
может помочь (но тогда вы, вероятно, получите более длинный список совпадений). Попробуйте такие команды, как:
grep -r Filter /etc/apache2/*
find /var/www -type f -name .htaccess -exec grep Filter {} \;
Вам также может потребоваться поискать другие включенные файлы, так как некоторые пакеты (некоторые веб-приложения, такие как phpmyadmin и другие) обычно устанавливают директивы конфигурации apache в разных каталогах (по крайней мере, так обстоит дело с некоторыми пакетами Debian / Ubuntu, не уверен в Fedora).
Вы также можете полностью отключить модуль фильтра (mod-filter
) и модуль mime (mod-mime
, который определяет директивы Add / RemoveFilter), но это деактивирует другие функции, которые могут вам понадобиться.
Проверьте файлы htaccess на что-то вроде
AddOutputFilterByType DEFLATE text/plain
Какую версию Fedora вы используете?
Вам не только нужно искать deflate
слово, но также нужно искать include
операторы в ваших файлах конфигурации apache. Большинство дистрибутивов Linux автоматически включают все файлы из каталога, например /etc/apache2/conf.d/
в их конфигурацию apache. Это может быть ваш случай.
Ваш дистрибутив, вероятно, включает a2enmod
и a2dismod
Утилиты apache, помогающие управлять модулями apache. Эти утилиты обычно управляют только ссылками в /etc/apache2/mods-enabled
каталоги, которые затем включаются, как я сказал выше. Попробуйте использовать эти команды для управления списком модулей, которые использует ваш apache.