Раздача webp картинок в Nginx

webp-ON-OFF
Как то раз когда на одном сайте был превышен лимит канала трафика в 40 Мегабит/с и сайт начал жутко тормозить - я задумался, а что можно сделать да бы сэкономить и не платить больше да ещё чтоб не тормозило?
И я нашел решение - это gzip офлайн.
Но он картинки jpg и png сжимает всего на 1%, а swg сжимает очень хорошо. Я начал искать дальше и наткнулся на альтернативные форматы картинок и среди них был webp формат и я остановился на нём.
Экономия трафика составляет в среднем 26%.

Сначала установим webp.

После этого этим скриптом можно сжимать всё что есть в папке /home/dj-x/dj-x.info/uploads

Рядом с оригинальными картинками png jpg jpeg будут созданы дубликаты в новом формате webp.
file.png
file.png.webp

После того как переконвертировали все картинки нужно ещё добавить немного в конфигурацию Nginx.
Вставляем его выше вашего кеширования.


Всё! Теперь Nginx будет раздавать картинки в формате webp тем браузерам которые его поддерживают - те которые не поддерживают будут грузить jpg и png.
Важно - расширение при этом меняться не будет и ссылки менять не нужно и переадресации тоже не будет - тип файла только будет меняться и размер.
content-type image/webp.

В браузере EDGE есть поддержка webp но для этого нужно скачать с магазина расширение для изображений
Webp Image Extensions.
Но чтобы это работало в EDGE и Firefox нужно вставлять ссылки на картинки так:


Дальше будет продолжение ели ещё что то найду.

Webp конвертер для Windows
Gzip сжатие в Nginx
Подробнее

Gzip сжатие в Nginx

nginx zopfli gzip
Сегодня напишу про gzip сжатие в Nginx.
Как оказалось Nginx может сжимать налёту и отдавать заранее уже сжатые архивы с расширением .gz - так называемое онлайн и оффлайн сжатие.

Дальше я приведу конфигурацию и другие шаманства на эту тему.

gzip статика!


Этим скриптом сжимаем по максимуму все эти типы файлов css csv js svg txt xml htm html.

Рядом с файлами будут созданы сжатые дубликаты с расширением .gz
file.css
file.css.gz

В конфигурацию Nginx нужно добавить это.


Всё! Теперь Nginx не будет каждый раз сжимать одно и тоже, а будет просто раздавать сильно сжатые статические файлы!

Webp формат картинок для Nginx
Подробнее