Ускорение сайта в 9 раз для SEO
Итак, задача уменьшить время загрузки сайта.
Первым делом проводим анализ сайта.
- Хорошим инструментом анализа является общий seo-аудит от SiteDozor.Удобство этого анализа в том, что он включает анализ и сео-показателей, и ошибки валидации, и данные Google PageSpeed Test.
- Google PageSpeed Test. Один
из самых популярных инструментов. Из минусов - в последнее время перестал выдавать итоги анализа скорости в баллах.
- Отдельные инструменты также от сервиса SiteDozor. Например, часто используем: Просмотр http-заголовков, Статус сервера (в том числе для нескольких страниц или сайтов одновременно) и т.д.
- Также на сайте мы подключили мониторинг сайта от сервера SiteDozor. Круглосуточный мониторинг позволил получить полную картину доступности сайта и времени ответа сервера. Еще плюс сервиса - можно настроить уведомления о неработе сайта и получения отчетов по мониторингу за день. Для веб-студий можно отправлять автоматически отчет клиенту от имени веб-студии (так называемые брендированные отчеты).
- Яндекс Метрика. Позволяет анализировать и получать отчеты по различным показателям загрузки сайта: до отрисовки страницы, до загрузки DOM.
- Просмотр Вебвизора позволяет увидеть конкретные визиты и действия пользователей.
Улучшая скорость сайта можно не только получать плюсы в ранжировании, но и получать больше доверия и коэффициент конверсий. В рекомендациях по улучшению сайта от Google написано: Оптимизируйте скорость загрузки. Быстро работающие сайты не раздражают пользователей и повышают удобство работы в Интернете. Это особенно актуально для посетителей с медленным подключением.
В ходе анализа сайта установлено:
- Время загрузки страниц для пользователя доходило до 7-15 секунд.
- Сайт постоянно падает - недоступен для пользователей даже с минимальной посещаемостью. В Метрике видно, что это, в свою очередь, вызывает постоянное исключение разных страниц из поисковой выдачи.
- Использование устаревшей версии php.
- Некорректная настройка сервера.
- Неоптимизированность файлов и скриптов.
- Большой вес некоторых изображений.
- Множество других различных факторов, влияющих на скорость загрузки.
Что было сделано для ускорения сайта.
- Сайт перенесен на новый сервер с SSD с увеличением оперативной памяти и мощности сервера. Можно, конечно, было оставить и на старом сервере, ограничившись оптимизацией всего остального, но Клиент планирует запуск мощной рекламной кампании и доведение количества посещений до 1000 человек в день. Разница в стоимости старого и нового хостинга составила 600 рублей. Разница в цене в этом случае многократно окупается за счет уменьшения количества потерянных клиентов.
- Произведена корректная настройка сервера и сайта, в том числе обновлено и настроено серверное ПО.
- Настроено кеширование.
- Проверено корректность настроойки переадресации страницы.
- Часть изображений объединена в спрайты. Часть изображений, не требующих прозрачности фона, переконвертирована из jpg в png.
- Изображения проверены на излишнее масштабирование (например, при помощи атрибутов width и height или в css) и, где возможно, изменены.
- Проверены Expires и Cache-Control.
- Включено gzip-сжатие
- Оптимизированы скрипты, сжаты файлы.
- Часть настроек произведена на хостинге, часть - в панели администрирования сайта, часть - в файле htaccess и других.
- Выполнены рекомендации Google по переносу скриптов в нижнюю часть страницы.
- Дополнительно для снижения нагрузки настроены временные ограничения для плохих ботов.
- Проведен Stress Test для 3000 посещений за интервал времени, который показал, что сайт уверенно держит нагрузку.
Что не сделано:
- Не настроено кеширование скриптов внешних сервисов. Так как это могло повлиять потом на удобство их обновления и настройки, принято решение пока не производить такие изменения.
- Не стали ужимать изображения и файлы, для которых google обещал 1-2 кб экономии. Во-первых, на данном этапе это некритично, во-вторых, такое переужатие часто снижает качество изображений.
- Графики на сайте используется мало, поэтому не стали выносить ее на отдельный поддомен.
- Так как сайт рассчитан только на целевую аудиторию в России, не производили замеры скорости загрузки сайта из разных стран мира.
Оптимизация скорости сайта мгновенно повлияла на показатели поведенческих факторов:
- Снижение количества отказов
- Увеличение количества просмотренных страниц
и другие показатели.