Как включить gzip сжатие на сервере Nginx. Включить сжатие gzip wordpress


Gzip сжатие в WordPress, способы установки.

Использование сжатой информации для передачи данных способно существенно сократить время загрузки ваших страниц. Если у вас объемные тяжелые страницы с большим количеством текста тогда вам просто необходимо gzip сжатие на вашем WordPress сайте.

После установки wordpress возникает ряд трудностей, одной из которых является настройка сжатия, для оптимизации и ускорения сайта. Сейчас мы попробуем решить данную задачу несколькими способами.

Для начала, давайте разберем саму суть сжатия Gzip и как оно работает, затем рассмотрим методы внедрения в ваш WordPress. Если вы долгое время не могли понять как настроить сжатие тогда один из предложенных способов со 100% вероятностью поможет вам в решении этой задачи.

Навигация по странице:

Что такое gzip сжатие?

Система gzip сжатие впервые было создана в 1992 году, и до сих пор не только не потеряла своей актуальности, но и стала стандартом при передач данных методом протокола HTML 1.1.

Сжатие методом gzip осуществляется для ускорения передачи данных, которые архивируются и распаковываются «на лету». Выгода от использования gzip сжатия становит в среднем 70%. Да именно такое количество байт вы сможете сэкономить при передаче ваших текстов.

Какие данные можно сжимать с помощью gzip?

Как уже упоминалось ранее в сжатие участвует только текст. Давайте рассмотрим в каких файлах происходит текстовое сжатие:

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

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

В зависимости от вашего веб сервера и его настроек существует несколько способов включения сжатия на вашем сайте. Рассмотрим примеры для Nginx и Apache, а так же конкретно под WordPress с использованием плагинов.

Для включения сжатия на Nginx потребуется использовать модуль ngx_http_gzip_module.

Для работы с gzip на сервере Apache модуль mod_deflate.

Gzip сжатие на Nginx

Для того что бы включить сжатие нужно настроить файл конфигурации nginx.conf который можно найти в директории /usr/local/etc/nginx/nginx.conf.

В данный файл нужно вписать следующий код:

http {

gzip  on;

gzip_min_length  1000;

gzip_proxied  any;

gzip_disable «MSIE [1-6]\.(?!.*SV1)»;

gzip_comp_level 7;

}

Нужен только код выделенный красным, комментарии можно удалить. После внедрения кода сохраняем наш файл и перезапускаем сервер.

Gzip сжатие на Apache

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

Первый:<IfModule mod_deflate.c>SetOutputFilter DEFLATEHeader append Vary User-Agent</IfModule>

Второй:AddOutputFilterByType DEFLATE text/plainAddOutputFilterByType DEFLATE text/htmlAddOutputFilterByType DEFLATE text/xmlAddOutputFilterByType DEFLATE text/cssAddOutputFilterByType DEFLATE application/xmlAddOutputFilterByType DEFLATE application/xhtml+xmlAddOutputFilterByType DEFLATE application/rss+xmlAddOutputFilterByType DEFLATE application/javascriptAddOutputFilterByType DEFLATE application/x-javascript

Третий:  <IfModule mod_deflate.c>AddOutputFilterByType DEFLATE text/htmlAddOutputFilterByType DEFLATE application/javascriptAddOutputFilterByType DEFLATE text/javascriptAddOutputFilterByType DEFLATE text/css<IfModule mod_setenvif.c>BrowserMatch ^Mozilla/4 gzip-only-text/htmlBrowserMatch ^Mozilla/4\.0[678] no-gzipBrowserMatch \bMSIE !no-gzip !gzip-only-text/html</IfModule></IfModule>

Если же это вам не помогло тогда нужно обратится к вашему хостинг провайдеру, для выяснения причин. Та

yrokiwp.ru

Включаем gzip сжатие. Настройка кэширования

При проверке сайта разными оптимизаторами, пользователи (особенно те, кто только недавно начал заниматься сайтом или задумался об его оптимизации и ускорении) получают сообщения вида «Используйте кэш браузера» и «Включите gzip сжатие». Если на сервере, где вы установили сайт есть возможность использования файла .htaccess в таком случае, в корне сайта создаете ( если он еще не создан) данный файл и в конец файла вставляете строки указанные ниже , после чего проверяете, правила должны применится в течение минуты.

Настройка кэширования и включение gzip сжатия выглядит таким образом

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

  1. Google pagespeed insights — https://developers.google.com/speed/pagespeed/insights/?hl=ru
  2. Проверка gzip /mod_deflate сжатия — http://www.gidnetwork.com/tools/gzip-test.php
  3. Тоже проверка gzip/mod_deflate — http://checkgzipcompression.com/
  4. Через curl по SSH проверяем таким образом curl -I -H ‘Accept-Encoding: gzip,deflate’ http://сайт_для_проверки
  5. Через wget это будет выглядеть таким образом   wget -S —header=’Accept-encoding: gzip’ -O /dev/null -q —no-proxy  http://сайт_для_проверки
  6. Проверочка вашего сайта https://gtmetrix.com/

Сам код для включения gzip сжатия и настройка кэширования на серверах, где производится обработка статических файлов с помощью веб серверов apache2 litespeed и других серверов которые поддерживают mod_gzip и mod_deflate (для сервера nginx правила отличаются).

<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/css application/json AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript AddOutputFilterByType DEFLATE text/xml application/xml text/x-component </IfModule> <ifModule mod_headers.c> # Все html и htm файлы будут храниться в кэше браузера один день <FilesMatch "\.(html|htm)$"> Header set Cache-Control "max-age=43200" </FilesMatch> # Все css, javascript и текстовые файлы будут храниться в кэше браузера одну неделю <FilesMatch "\.(js|css|txt)$"> Header set Cache-Control "max-age=604800" </FilesMatch> # Все флэш файлы и изображения будут храниться в кэше браузера один месяц <FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$"> Header set Cache-Control "max-age=2592000" </FilesMatch> # Отключаем кеширование php и других служебных файлов <FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$"> Header unset Cache-Control </FilesMatch> </IfModule> <ifModule mod_expires.c> ExpiresActive On #по умолчанию кеш в 5 секунд ExpiresDefault "access plus 5 seconds" # Включаем кэширование изображений и флэш на месяц ExpiresByType image/x-icon "access plus 1 month" ExpiresByType image/jpeg "access plus 4 weeks" ExpiresByType image/png "access plus 30 days" ExpiresByType image/gif "access plus 43829 minutes" ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds" # Включаем кэширование css, javascript и текстовых файлоф на одну неделю ExpiresByType text/css "access plus 604800 seconds" ExpiresByType text/javascript "access plus 604800 seconds" ExpiresByType application/javascript "access plus 604800 seconds" ExpiresByType application/x-javascript "access plus 604800 seconds" # Включаем кэширование html и htm файлов на один день ExpiresByType text/html "access plus 43200 seconds" # Включаем кэширование xml файлов на десять минут ExpiresByType application/xhtml+xml "access plus 600 seconds" </ifModule>

Сжатие на nginx  в раздел server обавляем строки.

gzip on; gzip_disable "msie6"; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript; gzip_comp_level 5;

Кэширование в браузере включается — expires max;

location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ { root $root_path; expires max;

Надеюсь это вам поможет ускорить работу вашего сайта. Всем удачи!

Документация nginxhttp://nginx.org/ru/docs/http/ngx_http_headers_module.htmlhttp://nginx.org/ru/docs/http/ngx_http_gzip_module.html

документация apachehttps://httpd.apache.org/docs/2.4/

 

Тюнинг nginx

https://habrahabr.ru/post/56497/

mybash.tk

Как включить сжатие на сервере Nginx, простая инструкция для nic.ru и других хостингов

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

Еще раз повторюсь, что речь пойдет о включении сжатия именно на сервере Nginx, а не Apache. Для того, чтобы включить сжатие на Apache, у него есть модуль mod_deflate. Это уже отдельная статья.

Итак, вернемся к теме. Некоторое время назад я наткнулся на эту инструкцию в комментариях на форуме хостинга Руцентра. К сожалению, не могу сейчас найти ссылку на тот топик.

Поэтому я буду рассказывать именно про то, как включить сжатие на хостинге nic.ru. Но это применимо и ко всем Nginx в целом, так что, если у вас другой хостинг, вы смело можете опустить пару пунктов из нижеприведенной инструкции и сделать то же самое у себя.

Инструкция по включению gzip-сжатия

Первые 2 пункта инструкции касаются только хостинга Руцентра.

Как видите, все очень просто. Если же вам нужно включить сжатие на всем хостинге, а не на конкретном сайте, то вам нужно перевести не сам сайт в ручной режим, а весь ваш сервер. И изменения нужно будет вносить в файл ~/etc/nginx/httpd.conf.

После включения сжатия у вас перед подачей в браузер будет сжиматься текст, js-скрипты и css-файлы. Если вы хотите, чтобы происходило сжатие других типов файлов, просто добавьте их MIME-типы через пробел в строчке gzip_types.

6817 просмотров

Февраль 4, 2015

alittlebit.ru


Смотрите также

Prostoy-Site | Все права защищены © 2018 | Карта сайта