AddOutputFilterByType
имел серьезные ограничения в httpd-2.2
, поэтому он был помечен как устаревший.Но в httpd-2.4
эта директива была перемещена в filter_module
, исправлена и не устарела.
В apache 2.2 вместо этого следует включить filter_module
и deflate_module
и использовать:
# Declare a "gzip" filter, it should run after all internal filters like PHP or SSI
FilterDeclare gzip CONTENT_SET
# "gzip" filter can change "Content-Length", can not be used with range requests
FilterProtocol gzip change=yes;byteranges=no
# Enable "gzip" filter if "Content-Type" contains "text/html", "text/css" etc.
FilterProvider gzip DEFLATE resp=Content-Type $text/html
FilterProvider gzip DEFLATE resp=Content-Type $text/css
FilterProvider gzip DEFLATE resp=Content-Type $text/javascript
FilterProvider gzip DEFLATE resp=Content-Type $application/javascript
FilterProvider gzip DEFLATE resp=Content-Type $application/x-javascript
# Add "gzip" filter to the chain of filters
FilterChain gzip
deflate_module
будет предоставлять сжатый контент только тем браузерам, которые заявляют о поддержке кодировки gzip
в заголовке запроса.