PageSpeed Insights: скорость загрузки как фактор ранжирования. Почему не нужно беспокоиться о показателе Google PageSpeed Insights

Подробно рассмотрим сервис гугла, про скорость загрузки сайта google page speed, как попасть в зеленую зону и набрать 99/100 возможных баллов. Быстрота открытия Вашего ресурса это очень важный показатель ранжирования сайта. В интернете очень много инструментов измеряющие скорость загрузки ресурса, но ориентироваться и пользоваться надо google page seed. Ваш проект должен быть в зеленой зоне! Данная зона начинается от 85 баллов. Чтобы обойти своих конкурентов набрать необходимо 98 — 99 баллов из 100. Все 100 получать не нужно, для ста необходимо отключить Яндекс Метрику и Гугл аналитику, что делать не желательно. Добившись высоких показателей, Вы сразу заметите рост позиций. Замерять необходимо каждую страницу отдельно. Переходим к практике.

От чего зависит скорость загрузки сайта google page speed

Время ответа сервера (это важно знать)

Предложение по оптимизации

Технически самая сложно исправляемая ошибка. От отклика Вашего сервера зависит общая картина всех показателей. Если не удается добиться нормальных показателей, то лучше поменять хост или перенести проект на VPS выделенный сервер. — подробная статья


Проверяем время ответа сервера

Общее время отклика можно проверить на mts.webopulsar.ru/test вбив свой домен (см. скрин выше). Для быстрого ответа на хосте необходимо настроить ряд параметров, а именно кэширование и сжатие файлов. Все настройки производятся в файле.htaccess, если данного файла в корне сайта нет, то просто создайте его. Если используется VPS сервер, то необходимо настроить руками Nginx сервер. Ручная настройка VPS сервера выходит за рамки данной статьи. В WordPress самое простое решение это установка плагина WP SuperCahe или аналога. Описаний в сети по настройке этих плагинов очень много.

Ответ сервера — это так же количество обращений к нему за тем или иным файлом, а именно за CSS и JS скриптами. Самое первое с чего надо начать, это сократить количество этих файлов, тем самым сократится число запросов и время отклика соответственно. То есть все CSS стили темы необходимо загнать в один большой файл. Как правило, в теме WordPress штук 5 — 7 таких файлов. Тоже самое проделать со скриптами. Точно таким же образом все стили плагинов загнать в общий CSS, скрипты тоже самое. Далее подробно расскажем как отключать стили в плагинах и подключать к общему файлу. Отдельно рассмотрим очистку базы данных и многое другое. Но сначала закончим с настройкой отклика сервера.

Включение использования кэширования в браузере и проверка

Как уже было сказано выше, на обычном хосте отсутствует возможность настройки сервера руками и все управление происходит через файл.htaccess. В двух словах, отдача контента пользователю происходит либо через сервер Apach (Апач), либо Nginx (энжинс). Оба сервера достаточно быстры в отдаче материала пользователю, но Апач при посещаемости более 3000 уникальных посетителей начинает тормозить и захлебываться. При таком наплыве уже необходим Nginx выделенный VPS сервер. Для того чтобы на стороне пользователя выполнялось кэширование необходимо создать или в существующий файл.htaccess вставить соответствующий код, ниже будет приведен.

Для примера возьмем сайт, к нему есть доступ, это тестовый сайт. Кстати Вам тоже рекомендуем завести тестовый домен, закрыть его от индексации и на нем проводить тесты различных плагинов и серьезные переделки темы или всего сайта. И так, этот домен расположен на обычном хосте Мажордомо.


Очень плохие показатели сайта

Перед непосредственной настройкой кэширования на хосте необходимо проверить и в случаи необходимости переключиться на Апач. В Мажордоме это делается в панели управления, выбирается нужный домен в разделе сайты, щелчком по нему необходимо перейти в панель управления, далее на вкладку Nginx и там если стоят галки, то все поснимать и сохранить. Если у Вас другой провайдер, то ищите в панели настройки Nginx или спросите службу поддержки.


Переключение на Апач в Можордомо
Снимаем все галки и отдаем контент через Апач

Для настройки кэширования в файле.htaccess необходимо дать инструкции для сервера. Апач кэширует через модуль mod_headers или более современный mod_expires. Необходимо либо запросить информацию у провайдера, либо поочередно попробовать сначала один, затем другой код, но можно вставить и оба кода, конфликтовать не должно.

## EXPIRES CACHING ## ExpiresActive On ExpiresByType image/jpg "access 1 year" ExpiresByType image/jpeg "access 1 year" ExpiresByType image/gif "access 1 year" ExpiresByType image/png "access 1 year" ExpiresByType text/css "access 1 month" ExpiresByType text/html "access 1 month" ExpiresByType application/pdf "access 1 month" ExpiresByType text/x-javascript "access 1 month" ExpiresByType application/x-shockwave-flash "access 1 month" ExpiresByType image/x-icon "access 1 year" ExpiresDefault "access 1 month" ## EXPIRES CACHING ##

Или второй

# Включаем кэш в браузерах посетителей # Все html и htm файлы будут храниться в кэше браузера один день Header set Cache-Control "max-age=43200" # Все css, javascript и текстовые файлы будут храниться в кэше браузера одну неделю Header set Cache-Control "max-age=604800" # Все флэш файлы и изображения будут храниться в кэше браузера один месяц Header set Cache-Control "max-age=2592000" # Отключаем кеширование php и других служебных файлов Header unset Cache-Control

После вставки необходимого кода снова выполните проверку скорости загрузки сайта.


Улучшение показателей после настройки кэширования

Настройка Gzip сжатия

Выполняется аналогично, добавлением следующего кода в файл.htaccess.

Mod_gzip_on Yes mod_gzip_dechunk Yes mod_gzip_item_include file .(html?|txt|css|js|php)$ mod_gzip_item_include handler ^cgi-script$ mod_gzip_item_include mime ^text/.* mod_gzip_item_include mime ^application/x-javascript.* mod_gzip_item_exclude mime ^image/.* mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*

Собственно всё, что можно было сделать для сокращения ответа сервера.

Выполните проверку вставленного кода, на предмет работы сжатия и кэширования. Для этого на странице сайта в браузере нажмите F5 (обновите страницу), далее F12, откроется окно web-разработчика (если попросит, то еще раз F5), перейдите на вкладку Network, далее в левом окне, в самом верху щелчок по названию страницы (см. скрин ниже), в правом окне на вкладке Headers откроются данные. Должны быть указаны параметры max-age=… и gzip deflate, как на рисунке. Если данные параметры отсутствуют, то что то Вы сделали не так, перечитайте мануал и повторите процедуру.


Проверка кэширования и сжатия после настроек

Добавьте еще две строчки кода:

Php_value memory_limit 512M php_value max_execution_time 30000

Это увеличит память PHP и увеличит скорость загрузки сайта. Идем далее и настраиваем саму тему, блог или магазин.


Улучшенные показатели, пункт кэширования и сжатия исчез

Как объединить CSS файлы и скрипты

Вы просто открываете общий файл CSS, как правило, он называется style.css и по очереди копируете в него все CSS файлы темы. Далее скопированные файлы темы необходимо отключить от вывода в функциях темы. Тоже самое проделать со скриптами. Обязательно сделайте резервную копию файлов, которые редактируете.

Следующим этапом необходимо стили плагинов так же загнать в общий файл style.css. Копируем содержимое стилевого файла плагина и вставляем в общий, затем переходим в функционал темы.

Отключение CSS плагинов обязательно нужно делать в функционе темы, чтобы при обновлении плагинов не переделывать заново. Отключение происходит по разному. Это может быть через add_filter или wp_degueue, wp_deregistr_style.

Во всех случаях необходимо найти в файле плагина название регистра отключаемого стиля. Для этого необходимо перейти в папку с плагинами, выбрать отключаемый и перебрать код, как правило, функционального файла (обычно название файла совпадает с названием программы). В качестве примера рассмотрим Newsletter. Открываем файл plugin.php и ищем что то с формулировкой style.


Ищем нужную функцию отключения CSS

Из скриншота видно, что стили подключаются через функцию wp_degueue, соответственно и отключать надо через неё. Далее смотрим на что ругается google page speed, видим что это один файл под названием style.css — копируем его в общий. Далее на любой странице своего сайта открываем html код, нажимаем Ctrl+U и ищем файл который дает отрицаловку. В нашем случаи это вот эта строка, см. скрин


Ищем на что ругается google page speed
Поиск нужной функции в плагине

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

Очень часто в стилях плагинов прописывают относительные пути к изображениям. То есть в папке с программой идут определенные картинки. Путь к ним указывается относительный. К примеру: название-плагина/img/img.pmg.

При копировании в общий файл CSS картинка пропадет и работать не будет, появится битая ссылка, что является грубой внутренней ошибкой сайта. Чтобы этого избежать, необходимо найти все эти относительные адреса изображений и заменить на полный путь к файлу с картинками (абсолютный путь), примерно так: https://им_сайта.ру/трали/вали/плага/img/img.png

Рассмотрим еще несколько примеров. Плагин Contact Form7 необходимо переподключить следующим добавлением кода

Add_filter("wpcf7_load_css", "__return_false");

Стили woocommerce отключаются аналогично

Add_filter("woocommerce_enqueue_styles", "__return_false");

Мой любимый плагин для ведения подписки Newsletter отключается так:

Function wp_dequeue_newsletter_enqueue_style() { wp_dequeue_style("newsletter-subscription"); } add_action("wp_enqueue_scripts", "wp_dequeue_newsletter_enqueue_style", 20);

Если Вы придерживаетесь ФЗ — 153 и используете плагин о предупреждении сбора cookie, то отключить его можно установив в конце functions.php Вашей темы следующий код:

Function wp_dequeue_cn_css_style() { wp_dequeue_style("cookie-notice-front"); } add_action("wp_enqueue_scripts", "wp_dequeue_cn_css_style", 20);

По такой же схеме сократите все Ява скрипт файлы. Таким подходом Вы сократите порядка 10-15 запросов к серверу.

Перенос стилей и скриптов в футер

Браузер при открытии страницы загружает первый экран Вашей статьи. Соответственно идет загрузка хейдера — шапки сайта. Как правило, все скрипты и стили прописываются там. Теоретически это конечно правильно, но сильно замедляет загрузку. Для отображения первого экрана не нужен весь файл CSS, тем более что туда запихано все, что нужно и возможно не нужно вообще. Необходима малая его часть, поэтому вставьте между и часть необходимого кода из CSS файла для отрисовки первого экрана, а остальной общий файл переместите в подвал. Как это сделать технически будет описано ниже. Так же необходимо и скрипты все перенести в подвал. Для этого в функционале темы добавляем следующий код:

Function footer_enqueue_scripts() { remove_action("wp_head", "wp_print_styles", 8); remove_action("wp_head","wp_print_scripts"); remove_action("wp_head","wp_print_head_scripts",9); remove_action("wp_head","wp_enqueue_scripts",1); remove_action("wp_head","wp_site_icon",99); add_action("wp_footer", "wp_print_styles", 5); add_action("wp_footer","wp_print_scripts",5); add_action("wp_footer","wp_enqueue_scripts",5); add_action("wp_footer","wp_print_head_scripts",5); add_action("wp_footer","wp_site_icon",99); } add_action("after_setup_theme", "footer_enqueue_scripts");

После этого все стили и скрипты будут находиться в подвале. Следующим моментом необходимо подключить асинхронную загрузку скриптов, это отложенная загрузка. Отвечает за это параметр defer. Добавьте в функции темы следующий код:

Function wcs_defer_javascripts ($url) { if(is_admin()) return $url; if (FALSE === strpos($url, ".js")) return $url; return "$url" defer="defer"; } add_filter("clean_url", "wcs_defer_javascripts", 11, 1);

Как сократить CSS, JS скрипты и ускорить загрузку сайта

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


Сервис сжатия CSS и JS

В интернете много сервисов для сжатия CSS файлов, вот один из них https://csscompressor.com (см. скрин выше). Просто копируете свой огромный файл и вставляете его в окно слева, жмете кнопку и справа готовый сжатый CSS, вставляете сокращенный код в файл на сайте, вместо старого, не забудьте сохранить изменения. Тоже самое проделывается со скриптами. Проверяется работа способность ресурса и скорость загрузки сайта.


После проделанных модификаций уже получили 85 из 100, читайте дальше и увидите все 100 из 100
Внимание:

В нашей обучающей программе Вы получаете полностью оптимизированный сайт на WordPress! Подписывайтесь в конце статьи на бесплатные уроки и запустите свой мега-проект в интернете.

Оптимизация изображений для увеличения скорости загрузки сайта

Все картинки должны быть оптимизированы и сжаты. Если у Вас много страниц и на них куча картинок, то Вы попали. На нашем блоге на момент технической реструктуризации было порядка 2000 изображений. Их полная обработка заняла три дня и чистого времени порядка 40 часов нудной, монотонной работы. Но оно того стоило, теперь любая наша страница выдает 99 из 100 баллов. А позиции сайта потянулись вверх.

Выполнить компрессию несколькими простыми способами. Первый: В самом Page Speed Tools в самом низу предлагаются файлы для скачивания, это скрипты стили и картинки. Но не обольщайтесь, программные файлы скорей всего будут не все, да и картинки могут недодать.


Сжатие изображений без потерь

Самый надежный и быстрый способ сжать картинки именно без потерь можно через онлайн сервис — compressor.io (просто скопируйте и вставьте в строку браузера). Сервис на английском, но прост и понятен. Для компрессии без потерь необходимо нажать на правую кнопку (см. скрин выше), работает только с jpg и png, хотя мы сжали и gif. Затем загрузить изображение и сжать, полученную копию можно скачать на комп и потом загрузить обратно на сервер или хост. Будьте внимательны, к названию картинки приклеивает свое название, не забывайте удалять его. Вот и все.


Сжимаем картинки в сервисе

Можно конечно в WordPress воспользоваться плагином, но это опять нагрузка на сервер. И скажем честно, что протестили пару широко разрекламированных плагинов, но результат плачевный, Гугл завернул сжатие и попросил поджать еще. На закуску самое интересное:

Удаление кода блокирующего отображение верхней части страницы

Удалите код JavaScript и CSS блокирующий отображение верхней части страницы. Так требуют поисковики. Что же это значит? А значит это следующее: По логике все скрипты и стили должны находится в подвале ресурса и загружаться после загрузки первого экрана. Но часть к примеру нужного CSS кода в первом экране может не загрузится, так как нужный код подгружается после отрисовки первого экрана.

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

Во завернул про простату, пойди найди тот код в сжатом CSS файле, да? Сам ищи!!!

Но все действительно просто, берете резервную копию не сжатого общего файла (куда копировали все стили темы и плагинов) и идете в сервис вычисления критического CSS по адресу https://jonassebastianohlsson.com/criticalpathcssgenerator/ и в строку 1 вставляете адрес страницы, в окно 2 вставляете полный CSS и жмете на кнопку 3. Полученный код надо вставить в header темы.


Сервис по выносу в шапку критического CSS

Сделать это надо через функцион темы, то есть в PHP файл функционала в самый конец вставляется следующий код

Add_action("wp_head", "hook_css"); function hook_css(){ echo ""; }

Код может получится большой. Далее проверьте еще несколько разных страниц на скорость загрузки. На некоторых ошибка может всплыть опять. Связано это с тем, что шаблон записи отличается от шаблона страницы и какого-то куска кода может не хватить. Главная страница так же отличается, где то Вы разрешили комментарии, где то нет, и это тоже может повлечь за собой эту же ошибку. Особое внимание уделите лендингам, скорость загрузки лендингов напрямую влияет на стоимость клика в контекстной рекламе. Чем выше скорость, тем ниже стоимость. — подробная статья.

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


Вот чего надо добится от каждой страницы чтоб было 99/100

Вот таких результатов Вы должны добиваться!

Очистка базы данных

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

Тема очистки базы данных достаточно большая и объемная, ориентирована в основном на опытных пользователей, так же в сети много рекомендаций и мануалов. Наш же блог большей частью направлен на новичков. Мы дадим пару советов и хаков к WordPress в рамках данной статьи, которые помогут Вам решить проблемы с мусором в базе данных. Справится даже новичок.

Удалите все ненужные компоненты.

Удалите неиспользуемые плагины. Старайтесь вообще их избегать. Есть плагины которые могут требоваться только в определенный момент, тогда и активируйте, поработали и деактивировали.

Удалите все ревизии и отключите автосохранение записей и страниц.

Удаление автосохранения и ревизий записей и страниц


Открываем файл wp-config

Как уже говорилось, WordPress по умолчанию сохраняет до 25 последних копий редакций постов. Для отключения ревизий автосохранения записей необходимо открыть файл в корневой папке WP с названием wp-config.php (см. скрин выше), найти строку (если отсутствует, то в конце файла вставить) …. И после неё вставить вот этот код

Define(‘WP_POST_REVISIONS’, false); define(‘WP_POST_REVISIONS’, 0);

Обе строки кода рабочие, вставлять надо только одну. Если не хотите удалять все 25 редакций, то можно ограничить до нескольких штук, к примеру, до двух. Вместо указанного кода необходимо вставить вот такую строку:

Define(‘WP_POST_REVISIONS’, 3);

Далее необходимо удалить лишние редакции, представьте, что на блоге написано порядка 100 статей и ко всем есть по 5 — 10 редакций. Это сильно загружает Ваш сервер. В момент обращения к записи начинается перебор всех ревизий и только в самый последний момент загружается нужная последняя редакция поста. Ввиду этого нужно очистить базу от ненужных редакций.

Для этого переходим в панель управления базами данных и заходим в MySQL. На хосте Мажордомо это делается так: Выбираем в левой колонке базы данных, справа в нужной базе нажимаем ссылку PMA — откроется панель PHP MyAdmin, в ней переходим на вкладку SQL (см. скрин выше) и вводим следующий код:

DELETE FROM wp_posts WHERE post_type = "revision";

Внизу слева кнопка «вперед». Все наша база очищена. Проделанные операции значительно уменьшат время загрузки Вашего сайта.


Удаление ревизий PHP MyAdmin

Периодически, в зависимости от регулярности публикаций, объема комментирования и т. д. регулярно заходите в PHP MyAdmin и вставляйте вот эти запросы в разделе SQL

DELETE FROM wp_posts WHERE post_type = "revision"; DELETE FROM wp_posts WHERE post_status = "trash"; OPTIMIZE TABLE wp_posts,wp_postmeta,wp_comments,wp_options; DELETE FROM wp_comments WHERE comment_approved = "spam"; DELETE FROM wp_comments WHERE comment_type = "pingback"; UPDATE wp_posts p SET p.ping_status = "closed"; DELETE FROM wp_postmeta WHERE meta_key IN("_edit_lock", "_edit_last","_wp_old_slug");

1-ый запрос - удаляет все ревизии;
2-ой запрос - очищает корзину;
3-ий запрос - оптимизирует таблицы;

7-ой запрос - удаляет информацию о последних редактированиях постов и еще некоторые моменты.

Как правило, на сайте устанавливаются кнопки социальных сетей. Данные виджеты устанавливаются через плагин или сторонний скрипт. Если Вы используете плагин, то следуйте инструкциям выше, переместите стили и скрипты в общий файл и т. д. Если сторонний скрипт, то значение «defer» к скрипту может не прописаться, тогда его нужно прописать вручную.. Мы используем код от Яндекс сервиса, в теме для вывода кнопок в конце статьи его необходимо было разместить в файле comment.php. Значение «defer» необходимо в этом случаи прописать вручную. То есть к скрипту необходимо добавить defer = ‘defer’ как показано на рисунке.


Очень часто картинки с сайта копируют, просто даже не изменяя адреса. В таком случаи загрузка изображений происходит с Вашего сайта, и увеличивают нагрузку на Ваш хост. Что бы запретить такое копирование добавьте следующий код в файл.htaccess

RewriteEngine On RewriteCond %{HTTP_REFERER} !^http://(.+.)?yandex.ru/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?undsoft.com/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?yandex.net/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?feedburner.com/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?mail.ru/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?poisk.ru/.*$ RewriteCond %{HTTP_REFERER} !^http://(.+.)?yourdomain.ru/.*$ RewriteCond %{HTTP_REFERER} !^$ RewriteRule .*.(jpe?g|gif|bmp|png)$ - [F]

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

Спамеры постоянно бомбят комментарии путем запуска специальных роботов. Тем самым создают ненужную нагрузку на Ваш хост. Вставив код

RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post.php* RewriteCond %{HTTP_REFERER} !.*yourdomain.ru.* RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http://%{REMOTE_ADDR}/$

в тот же.htaccess Вы запретите оставлять коммент минуя форму комментирования, таким образом, многие боты просто отвалятся.

На домашней странице выводите только анонсы записей. Выводите только 3 — 5 записей.

Иногда запись бывает очень популярная и обсуждаемая. Старайтесь не выводить более 50 комментов на странице.

Используйте только жизненно необходимые плагины. Удалите разную лобуду. То что можно сделать руками без использования дополнительных модулей, делайте руками, в интернете полно подробных рекомендаций и решений. При не использовании плагина, деактивируйте его на время бездействия. Так например OptimizeDB, плагин по оптимизации базы данных, нужен только при очистке БД.

Активировали, поработали с базой и деактивировали. Таким образом, это расширение будет создавать нагрузку только в момент работы, а не постоянно.

Подумайте о переезде на VPS сервер с обычного хоста. Это сразу решит множество проблем. В плане финансовых затрат практически никаких. На примере провайдера Мажордомо смотрим расценки — хост = 2400 за год, VPS = 3500 за год.

Минус в том, что считается якобы, что сервером гораздо сложнее в управлении и администрировании. Необходимо изучить данную тему, платные настройки стоят от 2000 рублей.

Изучите материал по теме, оплатите месяц и потренируйтесь, проведите так называемый тест. Загрузите пробный сайт, настройте, поработайте с сервером.

Со временем мы выпустим пошаговое руководство по настройке VPS сервера. А пока можете скачать бесплатные уроки и потренироваться на локальном сервере Денвер. Сумеете за пару часов запустить свой полноценный сайт на компе и полностью настроить. Этот опыт понадобиться Вам при администрировании VPS сервера, так что оформляйте подписку и получайте бесплатно уроки.

Совет:

Если Вам руками сложно справится с такими настройками, то попробуйте установить два плагина:

WP Super Ceshe

OptimizeDB

Выводы

Вначале статьи мы Вам показали скрин одного из наших тестовых сайтов до оптимизации.

А это уже после полной оптимизации.


Начали с 29 из 100 и довели до 100/100

Соответственно, чтобы не говорили, добиться высоких показателей скорости загрузки сайта в Google Page Speed Tools Insights можно и нужно. Вот наш сайт сайт до оптимизации:


До оптимизации

И после оптимизации скорости загрузки сайта.


После всех настроек

Все страницы ресурса настроены и имеют показатель 99 из 100. Если отключить Я.Метрику и Гугл аналитику, то будут все 100.

Обязательно настройте свой ресурс на высокие показатели. Параметр скорость загрузки сайта, очень сильно влияет на ранжирование в органической выдачи.

Обязательно ознакомьтесь с похожими записями

Понравился материал? Подписывайтесь на наш блог.

Модуль Google PageSpeed для сайта: что умеет и как пользоваться

Решили поэкспериментировать и добавить на три проекта ускоритель от Гугла. Что из этого получилось — выясняем.

Сайты должны грузиться мгновенно. Ах, нет, сайты ничего никому не должны? Зайдите в троллейбус и сядьте рядом со студентом, который сидит с айфоном. Посмотрите, готов ли он ждать, пока загрузится какой-то интернет-магазин. Скажем так: три секунды — и вкладка закрывается. В ход идет следующий результат из поисковой выдачи.

Кстати, про поисковую выдачу. Скорость загрузки сайта влияет на ранжирование в поисковиках. Пруфы и . «Тормозящие» сайты реже посещаются роботами, а, значит, реже индексируются. От этого страдает место в выдаче и удобство поиска нужной инфы.

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

— Мэтт Каттс, Google

Гугл потрудился и выпустил свой инструмент для проверки скорости — PageSpeed. Найти тормозящие загрузку элементы просто — заходим сюда и в единственном поле указываем адрес, который хочется протестировать. За минуту будет готов подробный отчет о производительности. Результат будет показан в попугаях. В идеале их сто, но попробуй-ка добейся! Даже самому Гуглу это не под силу: проверьте его сервисы:)

Тесты проводятся как для десктопной, так и для мобильной версии сайта. Ориентироваться лучше по цветовой шкале: желтая зона укажет, что есть элементы, которые стоит оптимизировать, зеленая сообщит, что все ок. Если сайт в красной зоне, подкручивайте скорость и оптимизируйте. Иначе впереди бездна: пока загружается страничка, юзер уже уйдет на другой сайт:)

Оптимизировать сайт можно двумя способами.

Ручная оптимизация

1. Сжимаем картинки Фотошопом или прогоняем через Optimizilla , например

Чем меньше весят картинки, тем больше шакалов тем быстрее загружается сайт. Делаем сжатие, многомегапиксельные фотки прячем под кат. Хватит превьюшки 640×480. Меньше картинка — шустрее сайт.

Даже на стартовой странице Google Developers графику можно сжать на 71%.

2. Выполняем подключение шрифтов с самого сайта, а не тянем их с гуглофонтов

Минус — пока браузер не загрузил шрифт, юзер увидит надоевший Ариал или Тахому.

3. Используем кэш браузера по максимуму

Когда сайт частично уже сохранен у клиента — загрузка пойдет намного быстрее.

4. Сокращаем JavaScript и CSS

Скрипты не редактируются каждый день после релиза — нет смысла сжимать их на лету. Хватит оптимизировать один раз после правок кода. Шаблоны JS лучше обработать на сервере, встроить результаты в HTML и использовать шаблоны на клиенте после загрузки.

5. Сокращаем HTML

На практике — удаление лишних пробелов, табов, переносов строк.

6. Удаляем неиспользуемый код

Можно встроенным в «Хром» аудитом. Нажимаем F12 и переходим на вкладку Audits. Внизу есть единственная кнопка Run. Занимается в целом тем же самым, что и PageSpeed. Только в реальном времени.

Автоматическая оптимизация

Любой сайт состоит из динамических и статических элементов. Динамические элементы — сам HTML-код, полученный из работы php и запросов к базе данных. А остальное — статика. Это картинки, JavaScript и CSS.

Автоматически оптимизировать сайт можно крутой штукой от Гугла — PageSpeed Insights. Этот модуль устанавливается на сервер nginx и после настроек сжимает в реальном времени дофига инфы , в том числе, графической.

PageSpeed Insights умеет анализировать HTML и оптимизировать ресурсы. Пережимать, короче. В исходном коде ресурсы будут находиться по другому пути, не по тому, что задан сжать фоточку разработчиком. Это стоит учитывать. Но отображение ресурсов не изменится. Уменьшится вес. А значит, возрастет скорость загрузки страницы и посетители станут довольнее:)

Однако у PageSpeed Insights имеются ограничения. Его можно поставить только на nginx, запущенный на или виртуальном сервере. Нет, арендованный где-то в Германии shared-сервер не подойдет.

Второе ограничение связано с вечной войной браузеров. Картинки, пережатые PageSpeed-ом, конвертируются в формат.webp, который понимает только «Хром» (на всенародно любимом Internet Explorer 6 такая штука не пройдет). В последних версиях отображению таких картинок научилась и «Опера». Потому что движок поменяла.

Примеры использования PageSpeed Insights

Мы установили модуль PageSpeed Insights на трех проектах — на своем новом сайте и на двух клиентских. Модуль видит, с какого браузера приходит запрос, смотрит, обучен ли он отображать webp-формат и отдает либо оптимизированную картинку, либо обычный jpeg.

По Сибириксу настройка заняла примерно полдня. Кое-что пришлось делать эмпирическим путем: меняли, смотрели, что происходит. Иногда зона была зеленой, а слететь в желтую могла совершенно непредсказуемо.

Сейчас обе версии стоят в зеленой зоне. Значит, проблем со скоростью не возникнет. Если скорость подключения хорошая, не EDGE какой-нибудь:)

В рамках технической поддержки интернет-магазина фабрики «Витра» мы решили поэкспериментировать и установить модуль PageSpeed Insights на него:

Здравствуйте, уважаемые читатели блога сайт! Сегодняшний пост будет посвящен замечательному инструменту Гугл Пейдж Спид, позволяющему провести тест любой страницы для изучения возможностей ускорения ее загрузки ().

Не для кого не секрет, что поисковые системы, особенно Гугл, в последнее время уделяют этому аспекту серьезное внимание, поэтому быстрые вебсайты получают определенное преимущество при ранжировании и более высокие позиции в поисковой выдаче.

Google Page Speed Insights не только обнаруживает и указывает на все причины, по которым страничка не загружается достаточно быстро, но и предлагает конкретные пути их устранения, причем некоторые из обнаруженных проблем можно достаточно легко ликвидировать силами самого сервиса в автоматическом режиме.

Какие вообще средства оптимизации для ускорения сайтов предлагает Google?

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

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

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

Ранее Page Speed Insights можно было использовать в виде расширений для браузеров и , ссылки на скачивание присутствовали на специальной странице Гугла. Причем для того, чтобы применять его в Мазиле, сначала необходимо было , где Пейдж Спид присутствовал в качестве его дополнения:


Сейчас уже нет возможности применять расширения для браузеров именно от Google, хотя такие же плагины, но в несколько другой интерпретации, доступны на официальных вебстраницах Хрома и Мазилы ( и ). Кроме того есть, вполне функциональный одноименный онлайн сервис Гугла с точно таким же функционалом и не меньшими возможностями. Если перейдете в раздел Developers , то увидите там ссылку на инструмент Page Speed:

К слову, на этой же странице «PageSpeed Tools» расположены все предложения Google по ускорению сайтов. Похоже, разработчики "империи добра" всерьез взялись за оптимизацию и ускорение всего интернет пространства, поскольку в Девелоперс вы найдете линк на Библиотеку Оптимизации (Integrate the PageSpeed Optimization Library ) с открытым исходным кодом.

Наличие открытого кода программного обеспечения данного проекта, работающего на основе модуля «mod_pagespeed », который устанавливается на сервера Апач (коих, кстати, подавляющее большинство), означает, что его может усовершенствовать или обновить любой желающий.

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

Ежели взгляните на верхний скриншот (информация обведена зеленой рамкой), то увидите там ссылку на установку последней версии уже готового модуля. Это вполне может быть интересно для владельцев , которые могут установить его на своих серверах, обеспечив автоматическое ускорение расположенных там сайтов.

Причем, существуют две модификации модуля Пейдж Спид: непосредственно для серверов Apache и для связки Apache + Nginx, где второй играет роль прокси-сервера:


Кстати, вариант совместного использования Апача и Ngnix в современных условиях наиболее востребован и используется большинством продвинутых хостеров (включая, например, Спринтхост), поскольку обеспечивает эффективное использование ресурсов. Так что, если вы заинтересовались таким методом автоматического ускорения сайтов, можете приложить к этому руку самостоятельно либо напрячь своего хостера.

Google"s PageSpeed рекомендует (пути для увеличения скорости загрузки страниц сайта)

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

Но для основной части читателей, то есть простых вебмастеров, более актуален вариант, который понятен и доступен "здесь и сейчас". Как раз таким условиям в полной мере соответствует сервис PageSpeed Insights, о котором подробнее и поговорим. Для анализа конкретной страницы сайта вводите ее URL () на этой страничке :



После анализа вы увидите оценку Гугла, причем как в отношении мобильных устройств, так и ПК, что особенно ценно. В данном примере для главной страницы этого блога 76 зачетных баллов из 100 для мобильников является средним результатом, который можно существенно улучшить, если воспользоваться находящимися чуть ниже рекомендациями.

Причем, для оптимизации каждого ресурса, который тормозит загрузку страницы, даны ссылки на соответствующие разделы (с целью их получения нажмите линк «Как исправить?» ), где вы найдете описания необходимых действий по устранению недочетов.

Но здесь нужно сделать важное замечание. Необходимо анализировать страницы разных типов , чтобы добиться уменьшения времени загрузки всего сайта в целом. Например, для стандартного блога Вордпресс уровень оптимизации в этом аспекте для главной, рубрик, статических страниц и записей может быть совершенно разным.

Выше я дал пример домашней страницы, на которой выводятся анонсы постов, а вот одной из статей Пейдж Спид дал гораздо более низкую оценку:


Это произошло потому, что посты обычно гораздо более объемные и включают много различного рода ресурсов и контента (изображений, видео, скриптов). Поэтому лучше начинать проверку на оптимизацию именно с них. Кстати, с этой точки зрения отталкивайтесь от оценки, которую Page Speed предоставляет для мобильников , поскольку достижение приличной скорости загрузки на таких устройствах требует гораздо больше телодвижений.

Но даже разные странички записей могут отличаться по качеству. Это происходит в том числе потому, что на некоторых из них выполняются дополнительные скрипты, замедляющие загрузку. Например, уровень оптимизации одной из таких вебстраниц вызвал у меня не просто удивление, а настоящий шок:


Совершенно очевидно, что 62 балла из 100 возможных не тот результат, к которому надо стремиться. А все потому, что на этой и еще ряде страниц записей у меня работает скрипт плагина SyntaxHighlighter, инициирующего красивое оформление кодов с подсветкой.

Таких расширений на сайте может быть несколько. В каждом конкретном случае нужно решить для себя, насколько плагин важен для вашего ресурса с точки зрения того функционала, который он обеспечивает. И в зависимости от этого необходимо либо его удалить, либо предпринять меры для оптимизации, которая поможет ускорить загрузку страницы.

Выше сказанное особенно касается самой популярной в мире CMS , которой пользуется подавляющее число вебмастеров. Всем хорош этот многофункциональный движок, но его необходимо постоянно отлаживать в плане уменьшения нагрузки на сервер и сокращения времени загрузки страниц. Поэтому владельцам веб-ресурсов, работающих на WP, следует принять это к сведению. И наличие такого сервиса как Пейдж Спид здесь как нельзя кстати.

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

В завершение посмотрите полезный видеоролик, из которого вы узнаете, почему советы Page Speed носят рекомендательный характер и по какой причине не следует фанатично им следовать.

PageSpeed, или если быть точнее PageSpeed Insights — это продукт компании Google, при помощи которого можно легко найти недостатки своего сайта. Под недостатками мы понимаем лишь технические моменты, которые сервис предлагает исправить.

Что такое Pagespeed insights и зачем он нужен?

Pagespeed insights — это сервис для оценки качества сайта, а именно: скорости его загрузки на мобильных устройствах и ПК. Самое главное — это бесплатный сервис рекомендаций для разработчиков веб-сайтов по ускорению страницы в браузере клиента. Алгоритмы сервиса постоянно меняются, потому сервис постоянно совершенствуется и следует всем требованиям поисковой систем Google.

По поводу особенностей загрузки страницы при разной скорости интернет-соединения, Pagespeed учитывает только факторы, не зависимые от сети аспекты. Вот что по этому поводу написано в справке :

Так как скорость подключения у разных пользователей различна, PageSpeed Insights рассматривает только независимые от сети аспекты работы страницы: конфигурация сервера, структура HTML, использование внешних ресурсов (изображений, JavaScript и CSS). Применив наши рекомендации, вы сможете оптимизировать относительную скорость загрузки страницы. Абсолютная же скорость загрузки в конечном итоге все равно зависит от скорости подключения к сети.

Pagespeed использует свою систему оценок, которая соответствует разной степени важности:

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

Преимущества и недостатки Гугл Пейдж Спид

У сервиса благая цель — сделать сайты в интернете максимально быстрыми и удобными как на десктопе, так и на пк. Невзирая на это, есть ряд моментов, на которые хочется обратить внимание:

  • Не всегда удается найти баланс между скоростью загрузки сайта и красивым внешним видом. Нужно определиться, что мы хотим: быстрый или красивый сайт? И то и другое получить практически невозможно.
  • Оценка для мобильных сайтов повторяет ошибки для ПК, добавляя лишь фрагмент о компоновке элементов страницы на маленьких экранах. Это не совсем адекватный показатель, ведь Mobile-friendly является фактором ранжирования . Потому, если хотите подтянуть мобильную версию сайта, нужно использовать отдельный отчёт Google.
  • Сервис не показывает ускорение загрузки страниц сайта в абсолютном выражении — секундах или минутах (если все настолько плохо). Он лишь учитывает балы (от 0 до 100), которые не всегда характеризуют реальную скорость загрузки сайта.
  • Сервис выдает обширные рекомендации по исправлению и указывает конкретные файлы, которые нуждаются в оптимизации. Кроме того, уже оптимизированные скрипты, стили и картинки можно скачать прям со страницы с результатами для компьютеров.

Как добиться оценки 100/100 на PageSpeed Insights

Все собственники сайтов считают, что если у них будет 100/100 в результатах, их сайт сразу выйдет в топ. На самом деле это не так. Во первых: не только скорость загрузки влияет на позиции сайта. Во вторых: достичь отметки в 100/100 практически невозможно (если вы хотите современный и модный сайт). Оптимальным считается вариант от 85 и выше, но каждый сайт или CMS система являются отдельным случаем и их нужно рассматривать отдельно.

Среди основных препятствий на пути к достижению заветных 100 балов в гугл пейдспид можно выделить:

  1. некорректное отображение сайта, при перемещении скриптов и стилей в футер;
  2. отсутствие возможности кешировать ресурсы, загружаемые со сторонних серверов (кнопки социальных сетей, виджеты и многое другое);
  3. отсутствие возможности минимизировать ресурсы (JS, CSS), загружаемые со сторонних серверов;
  4. качество сжатие изображений, которые устроят сервис, не очень хорошо выглядят.

О том, как обычному сайту на WordPress набрать 99/100 в PageSpeed Insights написано на хабре . Довольно таки интересная статья, возможно, она будет полезна не только сайтам на , но и на других CMS. Также, можно использовать сторонние плагины, которые сами оптимизируют сайт: либо под пейдспид, либо — под скорость загрузки.

Сервис Google PageSpeed Insights, дающий советы по ускорению сайта, давно завоевал популярность. Возможно, вы сталкивались с его рекомендациями, даже если никогда не открывали страницу проекта . SEO-агентства и фрилансеры любят засовывать результаты анализа в свои коммерческие предложения и аудиты, стараясь впечатлить клиента обилием терминологии и суровыми заголовками в духе «Исправьте обязательно».

Поэтому разбираться в том, что такое Google PageSpeed Insights и обязательно ли следовать его рекомендациям , нужно не только разработчикам, но и владельцам сайтов/менеджерам интернет-проектов.

Это было вступление. А теперь обещанный нюанс.

Google PageSpeed Insights предназначен для тестирования разных версий одной страницы. Сравнивать рейтинги разных сайтов — бессмысленное занятие.

Понимаете? Google PageSpeed Insights — это НЕ сервис для измерения скорости сайта. Это инструмент, показывающий возможные точки приложения усилий для оптимизации скорости загрузки страницы. И разумеется, рейтинг в сервисе не влияет напрямую на ранжирование, а потому использование рекомендаций в отчетах по SEO — лукавство. За исключением ситуаций, когда внедрение этих советов действительно критично влияет на удобство пользователей.

На этом можно закончить, но вы бы не читали этот блог, если не любите пруфы. Что же, порассуждаем.

Насколько связана реальная скорость загрузки и рейтинг PageSpeed?

Не особо. Вот вам два скриншота из сервиса.

1. Результаты теста страницы , содержащей много текста и картинок:

Несмотря на размер, страница грузится с приемлемой скоростью — можете проверить самостоятельно.

2..php — в ней стоит задержка загрузки на 5 секунд (функция sleep(5)):

Разница на 20 пунктов, первая страница в «красной» зоне, вторая — в «желтой». Упс!

Достаточно наглядно, не так ли? Запоминаем: плохой рейтинг — не то же самое, что долгая загрузка. Это просто показатель, что страницу можно сделать быстрее. Но быстрее в 2 раза или на 2% — сервис, конечно же, не скажет. Не потому что с ним что-то не так. Просто он предназначен для другого и это нормально. Принимать решения должен разработчик.

Ладно, но ведь все равно высокий рейтинг полезен для SEO? Раз это сервис от самого Гугла!

Аргумент, на мой взгляд, довольно слабый. Как показано выше, количество баллов, которое выдает инструмент, не связано с реально важными для пользователя характеристиками.

Т.е. этот рейтинг это скорее шум, чем полезный сигнал для поиска. Сайты-лидеры со сложным функционалом на JS зачастую сидят в «красной» зоне. А вот проекты родом из нулевых, созданные на одном HTML, могут выдавать 80-90 баллов. Кстати, Google никогда не утверждал о взаимосвязи рейтинга своего сервиса и ранжирования.

Но допустим, это и правда важный фактор ранжирования. Что бы мы тогда наблюдали? В ТОПах бы преобладали сайты с высоким рейтингом. Есть такое? Нет!

Вот вам скрин сайта из ТОП-2 Google по запросу «пластиковые окна москва»:

Конечно, это единичный пример. Но если бы это фактор был по-настоящему значим, в ТОП такой сайт бы не допустили. Можно найти множество других кейсов в не менее конкурентных тематиках.

А потому — думаем в первую очередь о реальной скорости загрузки сайта (проверить можно, например, с http://www.webpagetest.org/). Если скорость не очень (хуже конкурентов), то в сначала работаем над оптимизацией базы данных и скриптов, которые отображают контент. Их неграмотная организация — причина большинства «тормозов». А потом уже и PageSpeed Insights пригодится.

Итак, теперь вы знаете, что порой можно игнорировать грозные советы вроде «Исправьте обязательно» — даже если их дает Гугл. Удачи!

Отправить

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то