Включить Сжатие gzip для Nginx можно несколькими способами, для меня самый лучший способ глобальный, у меня есть сервер и много сайтов, и включить сжатие gzip для всех сайтов за один мах будет отличным вариантом.
1. Вариант (глобальный) — Как включить Сжатие gzip для Nginx
Нам надо в файле настроек Nginx прописать код для включения сжатия , у меня на сервере стоит ОС Centos 6, если у вас другая ОС то что б узнать где находиться главный файл настроек вам нужно вести в поиск гугла запрос «путь к файлу конфигурации, nginx.conf, ваша OC»
Открываем файл nginx.conf находим код:
http {
После, с новой строчки добавляем следующий код:
#gzip gzip on; # Включаем сжатие gzip_comp_level 6; #Степень сжатия (от 1 до 9 цифра больше увеличивает степень сжатия и как следствие нагрузка на ЦПУ растет) gzip_vary on; #Разрешаем выдавать в ответе строку заголовка "Vary: Accept-Encoding" gzip_static off; # Запрещаем проверку наличие готового сжатого файла. gzip_types text/css text/plain application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript text/x-js; # Типы файлов которые мы будем сжимать gzip_min_length 1024; # Указываем минимальную длина ответа, при которой модуль будет сжимать, в байтах (сжимаем файлы больше киллобайта, меньше смысла не имеет слабо ощутимо сжатие будет) gzip_disable "msie6"; # Запрещаем сжатие ответа методом gzip для IE4-6 gzip_proxied any; # Разрешить сжатие для всех проксированных запросов
Сохраняем, перезагружаем Nginx, в консоли ssh водим команду:
service nginx restart
Все готово, все сайты жмут в gzip для Nginx.
2. Вариант — включит Сжатие gzip для Nginx для сайта
Если вам нужно включить сжатие только для одного сайта,
Ищем файл настройки для сайтов, название тоже может быть nginx.conf в директории перед сайтами, или можно воспользоваться поиском в notepad++ по поиску по всех файлах, искать нужно код:
server {
listen 25.158.178.154:80;
server_name vasnemedomian.com www.vasnemedomian.com;
error_log /var/log/httpd/domains/vasnemedomian.com.error.log error;
С новой строчки вставляем код:
#gzip gzip on; # Включаем сжатие gzip_comp_level 6; #Степень сжатия (от 1 до 9 цифра больше увеличивает степень сжатия и как следствие нагрузка на ЦПУ растет) gzip_vary on; #Разрешаем выдавать в ответе строку заголовка "Vary: Accept-Encoding" gzip_static off; # Запрещаем проверку наличие готового сжатого файла. gzip_types text/css text/plain application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript text/x-js; # Типы файлов которые мы будем сжимать gzip_min_length 1024; # Указываем минимальную длина ответа, при которой модуль будет сжимать, в байтах (сжимаем файлы больше киллобайта, меньше смысла не имеет слабо ощутимо сжатие будет) gzip_disable "msie6"; # Запрещаем сжатие ответа методом gzip для IE4-6 gzip_proxied any; # Разрешить сжатие для всех проксированных запросов
Сохраняем, перезагружаем Nginx, в консоли ssh водим команду:
service nginx restart
Все готово, Nginx сжимает gzip только для вашего сайт.
