GZIP: лучший выходной компрессор WordPress

Rifat Учебные пособия по WordPress Nov 10, 2020

Повышение скорости - главная цель каждого владельца веб-сайта. Чем быстрее сайт, тем лучше пользовательский опыт, что приводит к большему прогрессу в достижении цели. Кроме того, Google ранжирует страницы, которые загружаются быстрее, выше в результатах поиска. Так что у вас есть веская причина убирать со своего сайта каждую последнюю миллисекунду. Один из очень эффективных способов сделать это с сайтами WordPress - это GZIP. Лучший способ ускорить процесс - сделать его меньше. Правильно? И это именно то, что делает GZIP. Мы расскажем вам, как его использовать, и сделать так, чтобы ваша страница была быстрой, как вспышка, даже если у вас уже есть сжатие изображений и другие настройки, настроенные и оптимизированные.

Что такое сжатие WordPress GZIP?

GZIP - это тип данных и программное приложение, используемое для сжатия и распаковки файлов. Жан-лу Гейли и Марк Адлер создали сжатие GZIP. Он был опубликован как бесплатная замена программы сжатия, используемой в ранних системах Unix.

Как и основное программное обеспечение WordPress в целом, GZIP был разработан для GNU (бесплатное программное обеспечение с открытым исходным кодом). «G» в «GZIP» от «GNU». Сжатие WordPress GZIP - это метод уменьшения размера файлов вашего веб-сайта, включая HTML, JavaScript и CSS.

Сжатие GZIP не работает с изображениями; однако это смешанный пакет для медиафайлов.

Например, некоторые мультимедийные файлы, такие как файлы MPEG и WAV, хорошо сжимаются с помощью GZIP, тогда как другие типы файлов, такие как файлы MP3, могут фактически увеличиться в размере, если вы попытаетесь их сжать.

Сжатие GZIP должно быть включено на вашем веб-сервере, чтобы включить сжатие файлов и папок (веб-серверы с включенным GZIP будут возвращать заголовок content-encoding: GZIP в своем ответе).

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

На вашем сайте WordPress уже включен GZIP?

Возможно, вам действительно не нужно включать GZIP. Возможно, вы уже используете его и не знаете об этом. Если вы перейдете к GTMetrix или Тест скорости Pingdom, вы увидите, оценивает ли он ваш сайт по сжатию компонентов вашего сайта или нет. Вы должны увидеть что-то подобное в разделе «Включить сжатие» или аналогичном заголовке.

Если вы этого не сделаете, вы получите плохую оценку за сжатие, которая будет выглядеть примерно так:

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

Как включить сжатие GZIP на WordPress

Сжатие GZIP включено по умолчанию на всех веб-сайтах, использующих WP Engine. Все статические файлы, включая текстовые файлы, изображения, CSS и JavaScript, автоматически сжимаются для оптимальной производительности веб-сайта. Это механическое сжатие уменьшает необходимость в директивах GZIP в вашем файле .htaccess. Проверьте, включен ли на вашем веб-сайте GZIP по номеру Подарок скорости проверки GZIP.

Однако не все веб-сайты WordPress размещены на WP Engine и не получат выгоды от включения сжатия GZIP по умолчанию. Если ваш сайт размещен на другой платформе, вам может потребоваться включить сжатие GZIP вручную. Это можно сделать несколькими способами, которые мы рассмотрим далее.

Включить сжатие GZIP с помощью плагина

Самый простой способ включить сжатие GZIP на любом веб-сайте - использовать плагин кеширования. Такие инструменты, как Ракета WP, включают сжатие, добавляя код в ваш файл .htaccess за вас, в то время как другие, такие как W3 Общий кэш, потребуют от вас добавления этого кода вручную.

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

Включить сжатие GZIP для Nginx

Если ваш веб-сайт использует Nginx, вы можете использовать фрагмент кода для включения сжатия GZIP. Было бы лучше, если бы вы поместили приведенный ниже фрагмент кода в файл nginx.conf своего сайта в раздел «HTTP». Вы также можете поместить этот фрагмент кода в блок конфигурации сервера или местоположения, но обычно рекомендуется использовать раздел HTTP:

gzip on;
gzip_types text/plain text/css text/javascript image/svg+xml image/x-icon application/javascript application/x-javascript;
gzip_min_length 1000;
gzip_vary on;
gzip_proxied no-cache no-store private expired auth;
gzip_diable “MSIE [1-6];

После сохранения и закрытия файла вам необходимо перезапустить Nginx. Для этого используйте следующую команду:

sudo service nginx restart

После перезапуска убедитесь, что сжатие GZIP активно, используя ранее описанные методы.

Включить сжатие GZIP для Apache

Если ваш веб-хостинг использует Apache, вам нужно будет отредактировать файл .htaccess, чтобы включить сжатие GZIP. Этот файл можно найти в корневом каталоге вашей установки WordPress через Протокол передачи файлов (FTP) или ваш файловый менеджер.

Вы можете использовать два мода Apache для включения GZIP, но Mod_deflate является наиболее широко поддерживаемым и хорошо документированным вариантом. Чтобы включить mod_deflate, добавьте:

<IfModule mod_deflate.c>
 # Compress HTML, CSS, JavaScript, Text, XML and fonts
 AddOutputFilterByType DEFLATE application/javascript
 AddOutputFilterByType DEFLATE application/rss+xml
 AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
 AddOutputFilterByType DEFLATE application/x-font
 AddOutputFilterByType DEFLATE application/x-font-opentype
 AddOutputFilterByType DEFLATE application/x-font-otf
 AddOutputFilterByType DEFLATE application/x-font-truetype
 AddOutputFilterByType DEFLATE application/x-font-ttf
 AddOutputFilterByType DEFLATE application/x-javascript
 AddOutputFilterByType DEFLATE application/xhtml+xml
 AddOutputFilterByType DEFLATE application/xml
 AddOutputFilterByType DEFLATE font/opentype
 AddOutputFilterByType DEFLATE font/otf
 AddOutputFilterByType DEFLATE font/ttf
 AddOutputFilterByType DEFLATE image/svg+xml
 AddOutputFilterByType DEFLATE image/x-icon
 AddOutputFilterByType DEFLATE text/css
 AddOutputFilterByType DEFLATE text/html
 AddOutputFilterByType DEFLATE text/javascript
 AddOutputFilterByType DEFLATE text/plain
 AddOutputFilterByType DEFLATE text/xml

 # Remove browser bugs (only needed for really old browsers)
 BrowserMatch ^Mozilla/4 gzip-only-text/html
 BrowserMatch ^Mozilla/4\.0[678] no-gzip
 BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
 Header append Vary User-Agent
</IfModule>

Чтобы вместо этого включить mod_gzip, добавьте:

<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 mime ^application/x-javascript.*
mod_gzip_item_include mime ^text/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_include handler ^cgi-script$
</ifModule>

Перед использованием любого мода вы должны сделать резервную копию вашего файла .htaccess и убедиться, что модуль mod_filter находится на вашем сервере, иначе может произойти ошибка 500.

Заключительные слова

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