Сжатие и оптимизация изображений для сайта с помощью JPEGoptim и OptiPNG

JPEGoptim и OptiPNG для оптимизации изображений на сервере
JPEGoptim и OptiPNG для оптимизации изображений на сервере

Как я уже писал ранее, я сейчас занимаюсь разработкой сразу нескольких интернет-проектов. И для меня очень важна не только визуальная составляющая, но и скорость открытия сайта у посетителя. Во-первых, никому не хочется ждать загрузки страниц долго. А во-вторых, Google отрытым текстом заявлял, что будет понижать сайты в выдаче, если они будут загружаться медленно.

Один из главнейших параметров который влияет на скорость загрузки сайта, это изображения. Помимо стандартных функций по сжатию и оптимизации изображений в таких программах как Photoshop и GIMP, есть и другие, которые позволяют как сжать так оптимизировать изображения прямо на сервере, уже после их выгрузки в интернет.

Лучшей программой по оптимизации JPEG для UNIX-подобных систем на серверах является JPEGoptim, а для PNG программа OptiPNG.

Поверьте, после всех этих оптимизаций и сжатий, чисто визуально вы не заметите вообще никаких изменений в изображениях. Зато по факту изображения действительно станут меньше в объеме.

JPEGoptim

Установка происходит очень просто. Для Ubuntu и Debian:
apt-get install jpegoptim

Для CentOS:
yum install jpegoptim

И сразу же можно приступить к сжатию и оптимизации своих JPEG-изображений. При этом Google рекомендует выполнять команды для этой программы с параметром --strip-all Например, чтобы оптимизировать изображение https://i0.wp.com/matovsky.com/wp-content/uploads/2015/09/photo.jpg нужно ввести команду из самого корня вашего сервера (некоторые папки я заменил русским словом папка для безопасности):

jpegoptim /var/папка1/папка2/data/www/matovsky.com/wp-content/uploads/2015/09/photo.jpg --strip-all

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

Однако таким образом производить оптимизацию и сжатие для каждого изображения крайне неудобно и долго. Ведь статей на сайте может быть очень много. Поэтому, чтобы сжать и оптимизировать сразу все JPEG-изображения на своем сайте, нужно заменить папки и название файла на звездочки (*) и выполнить следующую команду:

jpegoptim /var/папка1/папка2/data/www/matovsky.com/wp-content/uploads/*/*/*.jpg --strip-all

Дело в том, что в самой папке uploads у меня нет изображений. Там находятся папки с годами (в них тоже ничего нет). А в них папки с месяцами. И вот в этих папках с месяцами и лежат мои изображения.

Рассмотрим другой пример – изображение photo.jpg лежит в общей папке images /var/папка1/папка2/data/www/matovsky.com/images/photo.jpg и в этой же папке лежат все остальные изображения. Значит общая команда по оптимизации всех изображений будет выглядеть следующим образом:

jpegoptim /var/папка1/папка2/data/www/matovsky.com/images/*.jpg --strip-all

OptiPNG

Установка тоже производиться очень просто. Для Ubuntu и Debian:
apt-get install optipng

Для CentOS:
yum install optipng

И тоже сразу можно приступить к сжатию и оптимизации PNG-изображений:

optipng /var/папка1/папка2/data/www/matovsky.com/wp-content/uploads/2015/09/photo.png

Так же как и в случае с JPEGoptim, чтобы сжать и оптимизировать все PNG-изображения сайта, нужно заменить папки и название файла на звездочки (*) и выполнить следующую команду:

optipng /var/папка1/папка2/data/www/matovsky.com/wp-content/uploads/*/*/*.png