Поддержать
07.10.2020

Сайт стал медленно загружаться

Самая частая проблема – медленная загрузка страниц. Разделяют скорость загрузки динамических страниц и ресурсов: картинки, видео, скрипты, стили и т.д. Динамические страницы формируются в режиме онлайн, именно на их обработку серверу требуется много процессорного времени и оперативной памяти. Например, если серверу требуется 1 секунда для компиляции PHP-скрипта в HTML-страницу, то это значит, что только через 1 секунду браузер начнёт(!) загружать сайт.

Бывают случаи, когда для компиляции страницы на «тяжёлом» движке, напичканном плагинами, уходит до 10 секунд. Вообще, обработка скриптов на стороне хостинга должна отнимать не более 200-500мс. Наиболее приемлемую и стабильную скорость компиляции PHP предоставляют хостинги из ТОП-рейтинга, если вам интересно в этой статье вы можете найти больше информации. Проверенные хостинги примечательны тем, что скорость загрузки сайтов не ухудшается со временем, а остаётся стабильной в течении всего срока использовании, а также внутри дня.

После компиляции, сервер начинает передавать исходный код страницы и встроенные ресурсы. Здесь уже важны другие параметры хостинга: пропускная способность канала, нагрузочная способность сервера по отдаче статических файлов, настройки веб-сервера и установленные лимиты. При просмотре сайта в браузере, будет заметна медленная загрузка уже после начала отрисовки контента. Это значит, что сервер уже исполнил весь код и теперь просто медленно загружаются файлы. При медленном процессоре, обычно «бросается в глаза» медленная работа админки.

Конечно, полагаться на субъективную оценку скорости загрузки страниц неправильно, но это то, что заметно в первую очередь и наводит на мысли о качестве текущего хостинга. Более точную информацию можно взять из систем аналитики. Например, в Google Analytics откройте отчёт «Поведение/Скорость загрузки сайта/Обзор». Установите период отчёта за несколько месяцев, или даже один год.

Первый отчёт «Обзор скорости загрузки сайта» показывает общее время загрузки, в среднем по сайту и всему миру. Если на сайте загружаются внешние скрипты, например, тот же JQuery, или реклама, то их время загрузки сюда также включено. Это нерепрезентативно, т.к. если объём данных, загружаемых рекламными скриптами, стал больше, то мы увидим худшую скорость загрузки. Выберите отчёт «Среднее время загрузки страницы».

Теперь мы видим именно время загрузки исходного HTML-кода. На данном сайте общее время загрузки страницы около 14 секунд, а время загрузки страницы 0,17 сек. Далее, откройте отчёт «Среднее время ответа сервера», это то самое время, необходимое на обработку динамических скриптов, желательно чтобы оно не превышало 200мс для статичных или закэшированных сайтов, и 500мс для динамических, например, для интернет-магазина.

Задержка в отчёте «Среднее время соединения с сервером» показывает, как долго происходит первый коннект между браузером и сервером. В идеале, это значение должно стремиться к нулю, или не превышать 200мс. Скорость загрузки ресурсов здесь не увидеть, для этого воспользуйтесь специализированным сервисом для оценки эффективности загрузки сайта:

  • Введите домен и выберите сервер из ближайшей к целевой аудитории страны
  • Дождитесь окончания тестирования
  • Спуститесь к разделу «File requests»
  • Отсортируйте таблицу по «Response Total Size» (размер файлов)
  • Снимите флажок «Rising» (не по возрастанию)
  • Узнайте время загрузки файлов с вашего домена в строке «Receive» (получение) и «Total» (всего)

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

Стабильность загрузки сайта

На втором месте, но не по важности, стоит стабильность (Uptime) ресурса, т.е., как часто сайт становится недоступным. Ошибки в браузере служат причиной низких позиций по запросам в поисковых системах Яндекс, Google, Mail.ru и др. Веб-сервер может отказать в обслуживании «лишнему» посетителю, когда будет превышен лимит потребления CPU или оперативной памяти для вашего тарифа, или он просто перегружен из-за большого количества клиентов на хостинге. В таких случаях в браузере отображаются ошибки таймаута или из серии «HTTP 5xx», что означает проблемы с сервером. На некоторых хостингах просто открывается страница-заглушка с просьбой перейти на тариф подороже, это конечно «полный признак» того, что пора переезжать на новый хостинг.

Не всегда веб-мастеру удаётся застать сайт в момент его недоступности. Веб-сервер записывает каждое обращение в журнал, т.н. «лог-файлы». Обычно, они находятся в папке «log» на хостинге, уточните у поддержки где именно. Существует множество программ для анализа логов, например, Nihuo Log Analyzer с визуально понятными отчётами. Также, на многих хостингах формируются отчёты в понятный формат HTML в папке «webstat». Попробуйте ввести в браузере «https://ваш-сайт.ru/webstat/». Если отчёт откроется, то выберите месяц и спуститесь в самый низ к разделу «Статусы ошибок HTTP».

Отсюда можно напрямую узнать, сколько раз сервер отказал в обслуживании и с какими HTTP-кодами. На скриншоте видно, что ошибка «502 Received bad response from real server» произошла 3 раза в месяц, это вполне не плохо, но значение должно стремиться к нулю.

Плохая техподдержка

Поводом для смены «прописки» послужит отвратительная служба технической поддержки. Проявляется это так:

  • Во время сбоев сервера ТП не отвечает
  • Обещают устранить проблему за 15 минут, но сайт недоступен часами
  • На вопросы о проблемах с настройкой сервера отвечают отписками
  • Вам часто приходится обращаться к ТП

Блокировки РКН

Весьма тревожный звоночек, я бы даже сказал колокол, если IP-адрес, на котором находится ваш сайт, был однажды заблокирован Роскомнадзором. Такое может случиться, когда вы на общем хостинге, и блокируют сайт «по соседству». Нужно присмотреться какие сайты «любят» хоститься у данного провайдера, может быть это, в большинстве своём, запрещённые ресурсы. Введите имя своего домена на онлайн-сервисе XSEO и прокликайте соседей, выводы напросятся сами собой.

Проблемы с безопасностью

На вашем хостинге должен функционировать антивирус с проверкой в режиме реального времени. Это большой плюс к безопасности и защите от взломов. Владелец может месяцами не догадываться, что его сайт взломан, а тем временем он будет снижаться в поисковой выдаче или будет помечен как «небезопасный». Антивирус на хостинге быстро находит вредоносный код и сообщает о нём по электронной почте. Если на вашем хостинге ещё нет встроенного антивируса, то это хороший повод подыскать замену.

Отсталость технологий

Мир IT развивается бешенными темпами, это касается и хостингов. Вебмастера не всегда следят за технологиями, на которых работает хостинг. Например, не все HTTP-сервера обеспечивают соединение типа HTTP/2 для более быстрой загрузки ресурсов, хотя на подходе HTTP/3. Проверить это можно на многочисленных онлайн-сервисах. Также стоит проверить используемую версию интерпретатора PHP. Чем выше версия, тем быстрее компилируются скрипты. Ваша версия PHP должна быть не ниже 7.4, это можно посмотреть в админке хостинга в разделе «PHP» или «Программное обеспечение».

Запуск раздела книг

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

7 шагов для ускорения фронтенда

Ваш сайт работает быстро? Узнайте, как можно значительно ускорить его загрузку всего за 7 простых шагов.