Схуднути для SEO - Методи стиснення технічного коду - SEO SEA

Оскільки 9 квітня 2010 р. Google оголосив у блозі Webmaster Central, що швидкість сторінок зараз є фактором ранжування, веб-майстри та оптимізатори пошукових систем хочуть скинути зайві "фунти".

Оскільки користувач очікує не тільки високоякісного вмісту, але й оптимального користувацького досвіду із швидкодоступним вмістом.
Хороша новина полягає в тому, що в Інтернеті набагато простіше, ніж у реальному житті! Навіть за допомогою декількох рядків коду та невеликих хитрощів, веб-сайти можуть бути стиснені на від 40% до 70% або навіть більше, у виняткових випадках. Як це зробити, я представляю в цій статті.

Навіщо стискати код?

Тепер можна поставити наступне запитання: чому я повинен стискати вихідний код свого веб-сайту в дні трансляції та зводити до мінімуму, якщо, без стиснення, «лише» кілька сотень кілобайт? Відповідь дуже проста: оскільки веб-сайти зі швидшим завантаженням забезпечують кращу взаємодію з користувачем, що позитивно впливає на коефіцієнт конверсії, утримання сторінок, кількість переглянутих сторінок на відвідувача та рівень відмов.

Хоча останній серед інших переваг стверджує, що алгоритм Panda оцінює сторінку, хороший коефіцієнт конверсії електронної комерції безпосередньо впливає на успіх бізнесу.

Отож гігант електронної комерції Amazon коштує близько 100% часу завантаження, який триває 100 мс. Екстрапольовано на повний рік, це призведе до альтернативних витрат приблизно 245 мільйонів доларів. Ці цифри вражаюче показують вплив швидкості завантаження веб-сайту.

Слід також взяти до уваги, що в 2015 році в Німеччині немає повного покриття DSL. Крім того, значно зросла частка користувачів, які переглядають Інтернет через мобільну мережу. Ось покриття LTE та 3G також завжди розширюється. Таммі Евертс підсумовує у своїй статті 13 причин, чому ви звертаєте пильну увагу на мобільну веб-ефективність на сайті sixrevision.com, як до теми мобільних веб-продуктивності в даний час ставляться психічно та чому кожному оператору сторінки потрібно якомога швидше переглянути.

Значного поліпшення часу завантаження можна досягти, наприклад, стиснутою доставкою даних за допомогою Gzip або Deflate. Це економить витрати та пропускну здатність.

Які методи стиснення доступні та які дані можна стиснути?

Ідея стиснення полягає в стисненні даних, запитуваних на клієнті, з метою зменшення часу передачі. Двома найпоширенішими методами стиснення в Інтернеті є gzip і здути, Процес стиснення визначає подібні рядки в документі та замінює їх тимчасовими рядками з однаковим символом підстановки. Це робить обидва методи ідеальними для стиснення файлів HTML, CSS та JavaScript, оскільки вони часто містять багато однакових рядків, і зазвичай багато рядків і порожніх пробілів. Обидва методи можна реалізувати або активувати із відносно невеликими зусиллями.

У наступному відео Google чітко пояснюються різні методи стиснення.

(Вбудовано) https://www.youtube.com/watch?v=whGwm0Lky2s (/ embed)

Процес стиснення: технічна експлуатація

Для того, щоб стислі дані могли передаватися, браузер клієнта повинен спочатку запросити передачу стиснених даних. Це робиться за допомогою HTTP-запиту із специфікацією "Accept-Encoding: gzip, deflate". Зверніть увагу, що ви можете вказати лише один або кілька методів стиснення. Приклад приймає як стиснення даних, так і gzip, і дефляцію. Важливо, що це лише прохання, а не скарга. Таким чином, сервер не повинен відповідати стисненими даними. Якщо дані недоступні у стислій формі, вони просто будуть надіслані без стиснення клієнту-запитувачу.

Сьогодні близько 90% браузерів підтримують стиснення. Впливу на параметр "Accept-Encoding", тобто способи стиснення, дозволені браузером, як правило, не існує. Браузер підтримує стиснення даних або не підтримує його.

Сервер відповідає на HTTP-запит клієнта так званою HTTP-відповіддю. Якщо сервер підтримує стиснення, дані стискаються на клієнті. Потім у заголовку відповіді HTTP сервер вказує, наприклад, "Content-Encoding: gzip". В іншому випадку запитуваний ресурс надсилається клієнту без стиснення.

Як активувати стиснення?

Залежно від сервера, стиснення можна ввімкнути через відповідний файл конфігурації.

методи

Фігура 1: Схема стиснення Gzip

Активація через файл конфігурації .htaccess

На веб-серверах, сумісних з NCSA (таких як Apache, найпоширеніший веб-сервер), стиснення Gzip можна встановити за допомогою конфігураційного файлу .htaccess. Для цього у файл .htaccess потрібно вставити такий код:

Спочатку, " Запитайте, чи встановлено плагін mod_deflate. Якщо так, " визначає, до яких типів файлів слід застосовувати такий фільтр. Приклади фільтрів для файлів JavaScript, CSS, HTML та XML. Потім SetOutputFilter DEFLATE визначає, що всі файли, що відповідають раніше вказаному шаблону, будуть доставлені з фільтром DEFLATE. Потім листування та запит модуля знову закриваються.

Теоретично цей фільтр також може застосовуватися до файлів інших типів (наприклад, до файлів зображень типу .jpg, .gif або .png). Кореспонденція файлів повинна бути скоригована таким чином:

Однак тут слід зазначити, що ці формати, як правило, вже стиснуті, і рекомпресія часто призводить до втрати якості файлів зображень. Тому рекомендується стискати двійкові файли, такі як зображення, перед завантаженням та уникати стиснення їх за допомогою gzip. Наприклад, можна використовувати спеціальні інструменти, такі як JPEGmini.com.

Активація за допомогою PHP

Якщо у вас немає доступу до файлу .htaccess сервера або якщо ви хочете перенести лише окремі файли, стиснуті у форматі gzip, ви можете ввімкнути стиснення, використовуючи такі коди:

Ця функція повинна бути розміщена перед першим кодом HTML, якщо це можливо.