Включить сжатие Gzip в Nginx

Включите сжатие Gzip для вашего сайта, чтобы эффективно экономить трафик 30% и повысить скорость доступа! Gzip — это технология ускорения сжатия веб-сайтов, которая может ускорить загрузку веб-сайтов. Принцип работы заключается в том, что после того, как сервер сжимает данные, браузер клиента быстро распаковывает их, что может значительно снизить трафик. Включение сжатия Gzip в Nginx значительно повысит скорость доступа к Nginx!

Включите сжатие Gzip для вашего сайта, чтобы эффективно экономить трафик 30% и увеличить скорость доступа.

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

Включение сжатия Gzip в Nginx сжимает файлы CSS, JS, XML и HTML веб-сайта во время передачи, повышая скорость доступа и оптимизируя производительность Nginx. Изображения, видео и другие мультимедийные файлы на веб-сайтах, а также большие файлы, сжимаются плохо, поэтому сжатие изображений не требуется. Для оптимизации производительности изображений вы можете задать более длительный жизненный цикл изображений, чтобы клиенты могли кэшировать их. При включении Gzip сервер Nginx сжимает статические ресурсы, такие как CSS, JS, XML и HTML, в соответствии с настроенной политикой, уменьшая их размер. Эти сжатые данные затем обрабатываются до того, как пользователь получит возвращенный контент, представляя его пользователю. Это не только значительно экономит исходящую полосу пропускания и повышает эффективность передачи, но и улучшает пользовательский опыт — убивая двух зайцев одним выстрелом. Хотя это потребляет некоторые ресурсы процессора, это того стоит ради лучшего пользовательского опыта.

Параметры конфигурации Gzip

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

Сжатие Gzip: перед отправкой ответного сообщения клиенту можно включить сжатие. Это может эффективно сэкономить полосу пропускания и увеличить скорость ответа клиенту. Сжатие Gzip можно настроить в модулях http, server и location. Параметры конфигурации сжатия Gzip в Nginx следующие:

gzip on; # Включать ли модуль gzip. on означает включение. off означает отключение. gzip_buffers 4 16k; # Устанавливает размер буфера, необходимый для сжатия. gzip_comp_level 6; # Уровень сжатия 1-9. Чем больше число, тем лучше сжатие, но и потребляет больше процессорного времени. gzip_min_length 1k; # Устанавливает минимальное количество байт, разрешенных для сжатия. gzip_http_version 1.1; # Устанавливает версию сжатого протокола http. Значение по умолчанию — 1.1. gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png application/vnd.ms-fontobject font/ttf font/opentype font/x-woff image/svg+xml; # Задаёт тип сжатого файла. gzip_vary on; # Добавляет информацию заголовка http Vary: Accept-Encoding к внутреннему прокси-серверу для определения, включено ли сжатие gzip. gzip_disable "MSIE [1-6]\."; # Конфигурация отключает условия gzip, поддерживает регулярные выражения. Это означает, что gzip не включен для IE6 и ниже (так как более ранние версии IE его не поддерживают). gzip_proxied off; # Включено, когда nginx используется в качестве обратного прокси-сервера, off (отключает сжатие всех данных результатов прокси), expired (включает сжатие, если заголовок содержит заголовок "Expires"), no-cache (включает сжатие, если заголовок содержит "Cache-Control: no-cache"),no-store (сжатие включено, заголовок содержит «Cache-Control: no-store»), private (сжатие включено, заголовок содержит «Cache-Control: private»), no_last_modefied (сжатие включено, заголовок не содержит  "Last-Modified"), no_etag (включить сжатие, если заголовок не содержит заголовок "Etag"), auth (включить сжатие, если заголовок содержит заголовок "Authorization")

Отредактируйте файл конфигурации nginx

[root@uzbox ~]# vim /usr/local/nginx/conf.d/www.conf http { gzip вкл; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.1; gzip_comp_level 9; gzip_vary вкл; gzip_disable "MSIE [1-6]\."; gzip_types текст/простое приложение/javascript приложение/x-javascript текст/css приложение/xml текст/javascript приложение/x-httpd-php изображение/jpeg изображение/gif изображение/png приложение/vnd.ms-fontobject шрифт/ttf шрифт/opentype шрифт/x-woff изображение/svg+xml; }

Перезагрузить файл конфигурации

systemctl перезагрузить nginx

 

Проверьте, включен ли Gzip.

[root@uzbox ~]# curl -I -H"Accept-Encoding: gzip, deflate" "https://uzbox.com" HTTP/2 200 сервер: nginx/1.18.0 дата: ср, 30 ноя 2022 05:19:05 GMT тип содержимого: text/html; набор символов=UTF-8 длина содержимого: 40429 x-powered-by: PHP/7.4.19 vary: Accept-Encoding, управление кэшем cookie: max-age=3, must-revalidate кодировка содержимого: gzip последнее изменение: ср, 30 ноя 2022 04:27:54 GMT строгая безопасность транспорта: max-age=31536000

Как показано выше, заголовок ответа содержит «Conten_Encoding: gzip», что означает, что Nginx включил сжатие (то же самое справедливо при доступе к запросу в браузере или просмотре заголовка ответа с помощью F12).

После того, как Nginx включит сжатие Gzip, размер файлов определенного типа gzip при передаче станет значительно меньше, что значительно улучшит производительность доступа Nginx.

Обнаружение сжатия GZIP веб-страницы

Проверить статус сжатия Gzip можно на следующем веб-сайте.

https://tool.chinaz.com/gzips/

счет

Ответить

Ваш адрес электронной почты не будет опубликован. Обязательные поля помечены *