Один з найголовніших параметрів, який впливає на швидкість завантаження сайту, це зображення. У сучасних реаліях більшу частину загального "ваги" сторінки сайту становлять саме зображення.

jpegoptim і optipng є одними з кращих консольних утиліт для оптимізації зображень. Розглянемо їх установку для аккаунта на сервері загального хостингу.

JPEGOPTIM:

1. Для початку необхідно підключитися до сервера по ssh

2. Далі створюємо папку для бінарних файлів утиліт:

 

[email protected] [~]# mkdir work_bin

3. Переходимо в директорію і викачуємо вихідні файли утиліти:

[email protected] [~]# cd work_bin/
[email protected] [~/work_bin]# wget https://github.com/tjko/jpegoptim/archive/master.zip

4. Розпаковуємо отриманий архів:

[email protected] [~/work_bin]# unzip master.zip

5. Виконуємо збірку утиліти, змінюючи стандартний шлях установки бінарного файлу на створену раніше директорію:

[email protected] [~/work_bin/jpegoptim-master]# ./configure --prefix=/home/user/work_bin
[email protected] [~/work_bin/jpegoptim-master]# make
[email protected] [~/work_bin/jpegoptim-master]# make install

6. Для зручності використання додаємо аліас:

[email protected] [~/work_bin/jpegoptim-master]# vim ~/.bashrc
alias jpegoptim='/home/user/work_bin/bin/jpegoptim'

7. Перепідключаємся по ssh і перевіряємо:

[email protected] [~]# jpegoptim -V
jpegoptim v1.4.4 x86_64-unknown-linux-gnu
Copyright (c) 1996-2016, Timo Kokkonen
libjpeg version: 6b 27-Mar-1998
Copyright (C) 1991-2010 Thomas G. Lane, Guido Vollbeding
Copyright (C) 1999-2006 MIYASAKA Masaru
Copyright (C) 2009 Pierre Ossman for Cendio AB
Copyright (C) 2009-2012 D. R. Commander
Copyright (C) 2009-2011 Nokia Corporation and/or its subsidiary(-ies)

8. Перевіряємо роботу утиліти:

[email protected] [~]# jpegoptim public_html/screenshots/*.jpg
public_html/screenshots/free_2013_full_js_2-1-big.jpg 662x662 24bit P Exif IPTC XMP Adobe JFIF [OK] 451545 --> 443608 bytes (1.76%), optimized.
public_html/screenshots/free_2013_full_js_2-1-origin-1200.jpg 1200x1200 24bit P Exif IPTC XMP Adobe JFIF [OK] 1034086 --> 1000150 bytes (3.28%), optimized.
public_html/screenshots/free_2013_full_js_2-1-original-1200.jpg 1200x1200 24bit P Exif IPTC XMP Adobe JFIF [OK] 1003198 --> 970113 bytes (3.30%), optimized.
public_html/screenshots/free_2013_full_js_2-1-original.jpg 1200x1200 24bit P Exif IPTC XMP Adobe JFIF [OK] 1003198 --> 970113 bytes (3.30%), optimized.
public_html/screenshots/free_2013_full_js_2-1-origin.jpg 1200x1200 24bit P Exif IPTC XMP Adobe JFIF [OK] 1034076 --> 1000140 bytes (3.28%), optimized.


OPTIPNG:
1. Завантажуємо вихідні файли утиліти:

[email protected] [~/work_bin]# wget http://downloads.sourceforge.net/project/optipng/OptiPNG/optipng-0.7.7/optipng-0.7.7.tar.gz

2. Розпаковуємо архів:

[email protected] [~/work_bin]# tar -xzf optipng-0.7.7.tar.gz

3. Переходимо в директорію:

[email protected] [~/work_bin]# cd optipng-0.7.7/

4. Виконуємо збірку утиліти:

[email protected] [~/work_bin/optipng-0.7.7]# ./configure --prefix=/home/user/work_bin
[email protected] [~/work_bin/optipng-0.7.7]# make
[email protected] [~/work_bin/optipng-0.7.7]# make install

5. Перевіряємо:

[email protected] [~/work_bin/optipng-0.7.7]# /home/user/work_bin/bin/optipng -V
OptiPNG version 0.7.7
Copyright (C) 2001-2017 Cosmin Truta and the Contributing Authors.
This program is open-source software. See LICENSE for more details.
Portions of this software are based in part on the work of:
Jean-loup Gailly and Mark Adler (zlib)
Glenn Randers-Pehrson and the PNG Development Group (libpng)
Miyasaka Masaru (BMP support) David Koblas (GIF support)
Using libpng version 1.6.34 and zlib version 1.2.11-optipng 

6. Для зручності використання додаємо аліас:

[email protected] [~/work_bin/optipng-0.7.7]# vim ~/.bashrc
alias optipng='/home/user/work_bin/bin/optipng'

7. Перепідключаємся по ssh і перевіряємо:

[email protected] [~/work_bin/optipng-0.7.7]# optipng -V
OptiPNG version 0.7.7
Copyright (C) 2001-2017 Cosmin Truta and the Contributing Authors.
This program is open-source software. See LICENSE for more details.
Portions of this software are based in part on the work of:
Jean-loup Gailly and Mark Adler (zlib)
Glenn Randers-Pehrson and the PNG Development Group (libpng)
Miyasaka Masaru (BMP support)
David Koblas (GIF support)
Using libpng version 1.6.34 and zlib version 1.2.11-optipng

8. Перевіряєм роботу утиліти:

[email protected] [~]# optipng -o7 public_html/screenshots/5eeda46fbc1e4348a00915c00ebe7bb7.png
** Processing: public_html/screenshots/5eeda46fbc1e4348a00915c00ebe7bb7.png
1920x1080 pixels, 3x8 bits/pixel, RGB
Input IDAT size = 376200 bytes
Input file size = 376812 bytes
Trying:
 zc = 9 zm = 9 zs = 0 f = 0 IDAT size = 330921
 zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 329760
Selecting parameters:
 zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 329760
Output IDAT size = 329760 bytes (46440 bytes decrease)
Output file size = 329832 bytes (46980 bytes = 12.47% decrease)


Зверніть увагу, що ключ -o7 для optipng використовує найвищий рівень оптимізації: на це може піти багато часу і може створити велике навантаження на CPU сервера від вашого облікового запису при обробці великої кількості зображень.

Ця відповідь Вам допомогла? 4 Користувачі, які знайшли це корисним (6 Голосів)