Обновить нельзя оставить: как менять CMS без ночного аврала

Раздел практики: техника.
- 1Заморозканикаких правок и плагин-установок в день обновления
- 2Копияфайлы и база, проверенная на восстановление
- 3Пробникобновление на копии, а не на живом сайте
- 4Применениеночью, по одному компоненту за раз
- 5Проверкаглавная, форма, оплата, логи — в первый час
Сделайте сегодня: проверьте, когда в последний раз из резервной копии реально поднимали сайт. Если не помните — копия считается отсутствующей.
Жёлтая плашка «доступно обновление» висит третью неделю не потому, что вы ленивый: в интернете уже гуляет история «обновил — белый экран». И она не выдумана: за год у нормального сайта набирается десяток обновлений ядра, шаблонов и плагинов, и каждое теоретически может что-то отломать. Лечится скучным порядком на тридцать минут.
Почему «потом» дороже
Отложенное обновление — это накопленный риск: дыры в старой версии известны не только вам, и боты сканируют интернет на их наличие круглосуточно. Плюс версии не приходят по одной: пропустив три минорных релиза, вы ставите сразу большой скачок — а чем он больше, тем интереснее ломается.
Копия, которая работает
Снять архив файлов и дамп базы — половина дела; вторая — доказать себе, что из них можно встать. Ритуал: копия → разворачивание на тестовом поддомене → открывается ли, работают ли формы. Повреждённый дамп от молча падающего плагина бэкапа — обычное дело, поэтому проверка раз в квартал важнее самой копии. Перед крупным обновлением — отдельная копия с пометкой «до», чтобы откатываться точечно, а не всей историей.
Ступенька перед живым сайтом
Идеальный кандидат — точная копия сайта на отдельном адресе: тот же PHP, та же база, только без посетителей. Обновления гоняются там: ядро, затем шаблоны, затем плагины — по одному, с проверкой после каждого. Полчаса на пробнике экономят вечер на проде. Нет отдельного хостинга — сойдёт локальная сборка или временный поддомен: неидеально, но лучше кнопки «обновить всё» на живом сайте.
Если всё-таки сломалось
Порядок действий при белом экране: не паниковать и не нажимать кнопку ещё раз. Включить вывод ошибок (или заглянуть в error_log хостинга) — в 90% случаев там имя плагина или строка конфликта. Откат последнего обновления — из той самой точной копии или плагином отката; хостинг-панель часто умеет восстановить файлы на сутки назад одним кликом. Если сайт не ваш, а студии: вот здесь вспоминается акт приёмки работ — обновлял ли подрядчик CMS и кто за это отвечает (приёмка работ).
Типичный случай
Корпоративный сайт на WordPress два года не видел обновлений — «работает же». Сломался не от обновления, а от старого плагина формы: через него прилетел спам с редиректами, и сайт неделю торчал в выдаче с чужими ссылками. Починка превратилась в пересборку: свежая версия, замена полутора десятков забытых плагинов, перенос контента вручную. После этого завели ритуал: вторник утро, копия, пробник, обновления, журнал в таблице. Тридцать минут в неделю вместо недели в полугодие.
Дальше: практика: техника · плюсы и минусы CMS · базовый курс.