Gzip

Редактор: Марина Долгова 18610 3 мин Аудио

Что такое Gzip?

Gzip - это программа для сжатия файлов, а также их распаковки. Основной ее особенностью можно считать, что она умеет сжимать\разжимать файлы "на лету" и не умеет работать с несколькими файлами (чтобы сжать несколько файлов есть хитрость - соединить несколько файлов в один tar-архив и запаковать его с помощью gzip в архив tar.gz).

Смотрите также: как ускорить работу сайта?

Как использовать Gzip?

Чаще всего эту программу применяют для ускорения работы сайтов. Этот процесс достаточно легко описать: например, если пользователь хочет увидеть страницу сайта (размером 100 кб), то в режиме реального времени она сжимается на сервере (например до 50 кб) и передается в браузер пользователя сжатой. Далее браузер распаковывает страницу и показывает пользователю. В итоге мы получаем значительное уменьшение размера страницы, и как следствие более быструю ее загрузку. Но здесь есть одно "но", выигрывая во времени загрузки страницы, мы увеличиваем нагрузку на сервер, т.к. ему нужно обработать операцию сжатия фактически "на лету".

Какие браузеры поддерживают Gzip?

Все популярные на сегодня браузеры поддерживают данную технологию и могут распаковать такие страницы.

Стоит ли мне включать gzip для своего сайта?

На этот вопрос ответ скорее "да", чем "нет". Ведь если ваш сайт (с включенным gzip-архивированием) будет очень сильно перегружать сервер, то часть посетителей попросту не смогут увидеть страницу сайта, на которую они зашли. Им просто будет выдаваться ошибка. Также gzip не всегда дает существенное ускорение загрузки страниц. Это как правило зависит от контента страницы и особенностей сервера на котором находится сайт. В итоге наш вам совет: с помощью сервиса проверки скорости сайта (от Google) измерьте Page Speed своего сайта до включения gzip и после этого. Если разница будет существенной, и Ваш сервер сможет тянуть такую нагрузку (проверить это можно самостоятельно - периодично посещая свой сайт, или же уточнить у хостинг-провайдера), то однозначно нужно использовать данную архивацию на своем сайте.

Как включить gzip сжатие?

Т.к. конфигурации серверов у каждого хостинг-провайдера разные, то нет единого способа включить gzip. Здесь нужно пробовать, т.е. добавлять определенный код в файл .htaccess и смотреть заработало ли ускорение. Посмотреть это можно на этом сайте. Как видно из скриншота, на нашем сайте получилось сжать страницу на 88%.

Результат gzip-сжатия

И так, берем файл .htaccess и добавляем в него такие строки:

<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
<IfModule mod_setenvif.c>
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</IfModule>
</IfModule>

Если не работает, то пробуем такой код:

<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
<ifmodule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_item_include file \.js$
mod_gzip_item_include file \.css$ </ifmodule>
</IfModule>

Еще вариант:

FileETag MTime Size
<ifmodule mod_expires.c>
<filesmatch ".(jpg|jpeg|gif|png|ico|css|js)$">
ExpiresActive on
ExpiresDefault "access plus 1 month"
</filesmatch>
</ifmodule>

И еще:

<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>

Также можно попробовать добавить этот код (сообщает серверу, что если есть уже заархивированная копия данных, то заново архивировать не нужно, а следует передать браузеру уже имеющийся архив):

RewriteEngine On
AddEncoding gzip .gz
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*)$ $1.gz [QSA,L]
Марина Долгова
Не нашли ответ на свой вопрос?
Задайте его экспертам! Ответ приходит очень быстро и прямо на ваш email.

Добавляя подтверждение "Я не робот" вы так же даете согласие получать сообщения от ru.hostings.info и принимаете его Политику конфиденциальности, позволяя ru.hostings.info хранить и обрабатывать вашу личную информацию, указанную выше, для предоставления вам запрашиваемого контента.

Рейтинги хостинг-провайдеров по задачам сайта
Марта
Панель управления

От панели управления зависит ваше удобство в настройке хостинге\сайта.

Большинство качественных хостингов из нашего ТОПа используют удобные панели управления, поэтому рекомендуем больше внимания уделить другим параметрам при выборе.

Вид хостинга

Облачный хостинг - распределение нагрузки на несколько серверов, если сервер с вашим сайтом перегружен или не работает. Это гарантия того что пользователи в любом случае смогут видеть ваш сайт. Но это дорогая, более сложная опция, которую предоставляют далеко не все провайдеры.

Виртуальный хостинг - подходит для большинства проектов начального уровня с посещаемостью до 1000 человек в сутки. В таком хостинге мощность сервера делится между несколькими хостинговыми аккаунтами. Услуга проста в настройке даже для новичков.

VPS - подходит для более сложных проектов с достаточно большой нагрузкой и посещаемостью до 10000 человек в сутки. Здесь мощность сервера фиксированная для каждого виртуального сервера, при этом сложность настройки увеличивается.

Выделенный сервер - нужен для очень сложных и ресурсоемких проектов. Для вас выделяют отдельный сервер,мощность которого будете использовать только вы. Дорого и сложно настраивать.

Размещение и обслуживание вашего собственного сервера в дата-центре хостинга - это не очень популярная услуга и требуется в исключительных случаях.

CMS

CMS - это система управления контентом сайта. Хостеры стараются для каждой из них делать отдельный тариф или упрощать установку. Но в целом это больше маркетинговые ходы, т.к. у большинства популярных CMS нет специальных требований к хостингу, а те что есть - поддерживаются на большинстве серверов.

Тип виртуализации

Виртуализация - это создание виртуальной среды на физическом сервере, позволяющая запускать требуемые ПО без затрагивания процессов, совершаемых другими пользователями сервера.  С её помощью ресурсы физического сервера распределяются между виртуальными (VPS/VDS). Основные виды: аппаратная (KVM), паравиртуализация, виртулизация на уровне ОС (OpenVZ).

Прочее

Абузоустойчивый хостинг - компании, которые разрешают размещать практически любой контент, даже запрещенный (спам, варез, дорвеи, порнографические материалы). Такие компании не удаляют контент вашего веб-сайта при первой же жалобе (“абузе”).

Безлимитный хостинг - хостинг у которого отсутствуют лимиты на количество сайтов, БД и почтовых ящиков, трафик, дисковое пространство и т.д. Обычно это больше маркетинговый трюк, но можно найти что-то интересное для себя.

Безопасный хостинг - тот, где администрация постоянно обновляет ПО установленное на серверах, устанавливает базовую защиту от DDoS-атак, антивирус и файерволлы, блокирует взломанные сайты и помогает их "лечить".

Защита от DDOS - компании, которые предоставляют хостинг с защитой от DDoS-атак. Такие пакеты ощутимо дороже обычных, но они стоят своих денег, так как ваш сайт будет защищен от всех видов сетевых атак.

Бесплатный тест

Тестовый период - предоставляется хостером бесплатно на 7-30 дней, чтобы вы могли удостовериться в его качестве.

Moneyback - период на протяжении которого хостер обязуется вернуть деньги, если вам не понравится хостинг.

Региональные
Цена

Настоятельно рекомендуем не покупать слишком дешевый хостинг! Как правило с ним очень много проблем: сервер иногда не работает, оборудование старое, поддержка долго отвечает или не может решить проблему, сайт хостера глючит, ошибки в регистрации, оплате и т.д.

Также мы собрали тарифы от тысяч хостеров, чтобы вы могли выбрать хостинг по конкретной цене.

Технологии и ОС

На языке программирования PHP и базах данных MySQL сейчас работает большинство сайтов. Они же поддерживаются практически всеми современными хостингами.

ASP.NET - платформа для разработки веб-приложений от Майкрософт.

ОС - операционная система, установленная на сервере хостинга. Мы рекомендуем размещать на серверах с Linux, если нет особых требований у разработчиков сайта.

Тип диска