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

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

Почему перезагрузка «чинит» сайт только на время

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

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

«Сайт глючит» - что это значит на языке диагностики

ЖалобаВероятная зонаКуда смотреть
Медленно открывается, зависаетНагрузка, база, кэшГрафики сервера, медленные запросы
Периодически ошибка 500Код, лимиты PHPЛоги ошибок - разбор в статье про ошибку 500
Выбрасывает, пустеет корзинаСессии, cookieНастройки сессий и проактивной защиты
Чужие данные, старые ценыКэш, композитНастройки кэширования и сброс по событиям
Редиректы на чужие сайты, рекламаВзломЧек-лист как понять, что сайт взломан
Не приходят заявкиФормы, почтаЖурнал почты, тест форм

Культура диагностики: как ищут причину профессионалы

  1. Зафиксируйте симптомВремя, страница, у кого воспроизводится, скриншот ошибки. «Вчера что-то глючило» - не данные; «в 14:20 на карточке товара 500 у всех» - данные.
  2. Воспроизведите проблемуСбой, который умеете повторять, наполовину решён. Не воспроизводится - собирайте статистику появлений: время суток, разделы, устройства.
  3. Вспомните, что менялосьОбновления, правки, новые модули, рост трафика, обмены. Большинство «внезапных» глюков начинается через день-два после какого-то изменения.
  4. Прочитайте логи за период сбояОшибки PHP, лог веб-сервера, лог MySQL, журнал Битрикс. Логи - показания свидетелей; без них любая версия остаётся гаданием.
  5. Проверьте гипотезу на тестовой копииМеняйте по одному фактору за раз и наблюдайте. Два изменения сразу - и вы уже не знаете, какое помогло.
  6. Устраните причину и наблюдайтеНастоящее «починили» - это когда сбой не повторился за контрольный срок, а не когда экран перестал краснеть.

Сайт хронически глючит, а причину никто не нашёл?

Возьмём сайт на поддержку: включим мониторинг и логи, найдём источник сбоев и устраним его. С 2013 года разобрали сотни таких «мистических» случаев - от 250 BYN в месяц.

Найти причину глюков
Совет. Заведите журнал инцидентов: дата, симптом, что сделали, помогло ли. Десять строк в таблице - и через месяц закономерность видна невооружённым глазом: глючит по понедельникам после выгрузки, падает при рассылке, тормозит в 12:00 по расписанию бэкапа конкурента по хостингу.
Важно. Хронические «глюки» бывают симптомом серьёзного: умирающего диска, заканчивающейся памяти или взлома. Регулярные лечебные рестарты маскируют картину до тех пор, пока сайт не ляжет окончательно - уже вместе с данными. Если сбои участились без видимых причин, проведите диагностику, не откладывая.

Когда перезагрузка - правильное действие

Честный ответ: иногда рестарт уместен. Сайт лёг в разгар рабочего дня - сначала поднимаем любым способом, потом разбираемся. Но у профессионалов за быстрым подъёмом всегда следует разбор: сохранить логи до рестарта, найти причину, закрыть её и записать выводы. Если причина в коде - её закрывает доработка сайта; если в сервере и окружении - настройка и мониторинг в рамках администрирования.

Частые вопросы про глючащий сайт

Сайт глючит эпизодически, а логи чистые. Так бывает?
Бывает: логирование выключено или пишется не всё. Первый шаг диагностики - включить логи ошибок PHP, медленных запросов и мониторинг ресурсов, затем дождаться следующего эпизода. Слепым сбор данных не заменить ничем.
Хостер говорит, что у него всё в порядке. Кто тогда виноват?
Зоны ответственности разные: хостер отвечает за железо и сеть, а код сайта, база, кэш и настройки - зона разработчика или поддержки. «Сервер работает» и «сайт работает правильно» - разные утверждения. Нужен разбор с обеих сторон по конкретному инциденту.
Сколько стоит найти причину, если сайт глючит?
Экспресс-диагностика по логам и симптомам у нас бесплатная: называем вероятную причину и смету до начала работ. Типовые случаи закрываются за 1-2 часа работы специалиста, сложные - фиксируем объём заранее, без сюрпризов в счёте.
Как отличить глюк от взлома?
Взлом обычно оставляет специфические следы: незнакомые админы, изменённые файлы, редиректы, всплеск исходящего трафика. Пройдитесь по чек-листу признаков взлома; если хоть один пункт совпал - действуйте по плану лечения, а не перезагрузками.

Сайт, который «просто глючит», на самом деле подробно рассказывает о своей болезни - логами, закономерностями, симптомами. Нужно лишь, чтобы кто-то слушал. Передайте сайт на администрирование в Alavir: мониторинг, логи, бэкапы и разбор каждого инцидента до причины. 450+ проектов с 2013 года, консультация бесплатная.