Оптимизация загрузки сайта

Размер шрифта

Печать

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

Скорость загрузки сайта в окне браузера пользователя зависит от:

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

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

Значение сервера и влияние на оптимизацию времени загрузки сайта

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

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

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

Путь от запроса пользователя до загрузки содержимого (его важно понимать для оптимизации скорости загрузки сайта):

  • Http-запрос пользователя (переход к адресу сайта в строке браузера);
  • Ожидание ответа сервера (DNS, TCP, выполнение редиректов, получение первого байта);
  • Выполнение php-скрипта индексной страницы (index.php, если сайт на php);
  • Выполнение других php-скриптов, которые подключены к файлу, перенаправление на другие файлы;
  • Подключение к базе данных (обычно MySQL посредством SQL-запроса через интерпретатор);
  • Получение данных из базы;
  • Полная загрузка страницы;
  • Вывод готового html-страницы на монитор пользователя.

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

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

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

  • Физическое расположение сервера (чем дальше отправлять запросы, тем больше требуется времени на их обработку);
  • Корректность php-кода и содержимого других серверных файлов (например, для сервера Apache – htaccess);
  • Доступность сервера и/или базы данных;
  • Правильность настройки редиректов;
  • Корректные пути внутри файлов сайта (в частности, это касается подключения шаблонов, которые загружаются на стороне пользователя).

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

Оптимизация сайта и ускорение загрузки сайта

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

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

  • Уменьшение веса графики и файлов шаблонов, стилей, скриптов;
  • Построение более правильной структуры;
  • Вынесение скриптов и стилей в отдельные файлы;
  • Использование сжатия.

Оптимальное время загрузки страницы – 3 секунды. Если оно превышает 5 секунд, то нужно сокращать этот показатель. Если требуется больше 7-8 секунд, это катастрофа для ресурса. Такая длительная загрузка приведет к ухудшению поведенческих факторов и падению в выдаче. Проверить, есть ли у ресурса проблемы, можно разными сервисами. Например, PageSpeed Insights от Google. Он в балльной системе оценивает, насколько сайт быстро грузится для пользователей с десктопов и мобильных устройств, и предлагает способы улучшения ситуации. Для оценки скорости загрузки можно также использовать сервис http://www.webpagetest.org.

Что еще можно сделать для оптимизации загрузки сайта:

  • Установить ограничение на количество запросов ботов и закрыть доступ к ресурсу от роботов, которые сильно нагружают сервер (какие именно – можно посмотреть по логам);
  • Перейти на CDN (система, которая загружает файлы с ближайшего сервера);
  • Оптимизировать внутренний программный код;
  • Включить gzip-сжатие;
  • Использовать кэш сервера для отображения статичного содержимого.

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

ОСТАЛИСЬ ВОПРОСЫ?