Как сжать ТОЛЬКО документы размером более 150 байт, обслуживаемые Apache? - PullRequest
2 голосов
/ 26 марта 2012

Google сообщает нам здесь , что:

"... gzipping выгодно только для больших ресурсов. Из-за накладных расходов и задержек сжатия и распаковки, вы должны только gzip файлывыше определенного порогового размера; мы рекомендуем минимальный диапазон между 150 и 1000 байтов. Gzipping файлы размером менее 150 байтов могут на самом деле сделать их больше. "

В настоящее время я использую

<ifModule mod_gzip.c>
  mod_gzip_on Yes
  mod_gzip_dechunk Yes
  mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
  mod_gzip_item_include handler ^cgi-script$
  mod_gzip_item_include mime ^text/.*
  mod_gzip_item_include mime ^application/x-javascript.*
  mod_gzip_item_exclude mime ^image/.*
  mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

в моем.Htaccess.Как сделать так, чтобы это относилось только к файлам размером более 150 байт?

Спасибо.

1 Ответ

2 голосов
/ 26 марта 2012

Я не думаю, что вы получите что-то, попробовав это.Сжатие и распаковка этих небольших файлов выполняется очень быстро даже на мобильных устройствах.Кроме того, 150 байтов намного ниже обычного MTU в Интернете, поэтому он будет по-прежнему только одним IP-пакетом, даже если сжатие увеличит его размер.

Но поскольку вы используете mod_gzip, а не mod_deflate, вы можете использовать

# minimum size (in bytes) for files to be compressed
  mod_gzip_minimum_file_size    500
# (for very small files compression will produce only small absolute gains
#  [you will still save about 50% of the content, but some additional
#  500 bytes of HTTP and TCP headers will always remain uncompressed],
#  but still produce CPU load for both client and server.
#  mod_gzip will automatically set smaller values than 300 bytes for
#  this directive to exactly this value 300.)

Обратите внимание, что значение по умолчанию составляет 300 байт, поэтому ваша установка уже выполняет то, что вы хотите.

...