Используйте MOD_DEFLATE для сжатия веб-контента из APACHE

{title}


{title}


Одним из наиболее эффективных способов уменьшить использование полосы пропускания веб-сервером и, в то же время, увеличить скорость доставки контента, является сжатие веб-страниц и, как правило, всех результатов, возвращаемых клиентов. Сжатие веб-контента может быть сделано несколькими способами.
Что такое модуль mod_deflate?
Модуль Apache mod_deflate позволяет серверу доставлять сжатые файлы на лету. Обычно он используется для повышения производительности веб-сайта в смысле меньшего времени загрузки для посетителя.
Когда на веб-сайт делается запрос, Apache готовит ответ, который будет отправлен посетителю в несколько этапов. Один из этапов состоит в изменении или преобразовании данных с использованием выходных фильтров. Модуль mod_deflate, после загрузки и активации, вставляется в виде фильтра, называемого DEFLATE, в строку выходных фильтров Apache, которая сжимает все данные, проходящие через него.
Например, вы можете установить уровень сжатия, ограничить сжатие определенными типами MIME или запретить некоторым веб-браузерам, посетителям или другим проблемам HTTP получать сжатые данные с сервера.
Модуль mod_deflate также предлагает входной фильтр, который можно использовать для распаковки сжатых данных в HTTP-запросах.
Процесс конфигурации, который мы разработаем, может быть вставлен в контексте основного сервера Apache или может быть сохранен в файле, который будет загружен с основного сервера, или в конфигурации виртуального хоста.
Активировать модуль mod_deflate
mod_deflate можно активировать как любой другой модуль Apache из файла /etc/httpd/conf/httpd.conf
 LoadModule deflate_module modules / mod_deflate.so 

Имейте в виду, что эта директива может существовать только в основной конфигурации сервера.
Включить сжатие
Сжатие данных может быть включено все данные, которые проходят через фильтр DEFLATE или в зависимости от выбранных типов MIME.
Чтобы включить сжатие для любого типа содержимого, мы должны ввести следующую директиву:
 SetOutputFilter DEFLATE 

Кроме того, вы можете указать тип файла для сжатия из выходного фильтра DEFLATE из директивы AddOutputFilterByType. Смотрите следующие примеры:
 AddOutputFilterByType DEFLATE текст / обычный AddOutputFilterByType DEFLATE текст / html AddOutputFilterByType DEFLATE текст / XML AddOutputFilterByType DEFLATE текст / CSS AddOutputFilterByType DEFLATE приложения / XML AddOutputFilterByType DEFLATE приложение / XHTML + XML AddOutputFilterByType DEFLATE приложение / RSS + XML AddOutputFilterByType DEFLATE приложение / JavaScript AddOutputFilterByType DEFLATE приложение / x- Javascript 

Отрегулируйте уровень сжатия
В общем, алгоритм сжатия с раздувом достаточно быстр, поэтому установка максимального уровня сжатия (9) не вызовет каких-либо заметных проблем даже на относительно старом оборудовании.
DeflateCompressionLevel 9
Пользовательские правила для проблемных браузеров
Сжатие может быть включено или отключено для типов текста / html для браузеров, которые могут вызвать проблемы или просто ограничить понимание.
 BrowserMatch ^ Mozilla / 4 gzip-только-текст / html BrowserMatch ^ Mozilla / 4.0 [678] no-gzip BrowserMatch bMSIE! Нет-gzip! Gzip-только-текст / html 

Преимущества сжатия
Алгоритм дефляции может сжимать текст очень быстро и с очень высоким коэффициентом полезного действия. С другой стороны, это практически бесполезно, когда используется для сжатия изображений, которые были подготовлены для Интернета, таких как PNG, JPEG, GIF и вообще всех других типов изображений, в которых сжатые данные уже были. То же самое касается сжатых аудиофайлов, таких как MP3, видео, документы PDF и все другие файлы уже сжаты.

  • 0