Резервное копирование сайта: как не потерять всё
Что и как часто копировать, где хранить, почему копия без проверки восстановления бесполезна и что делать, если бэкапа не оказалось.

Резервное копирование — та задача, которая кажется скучной ровно до момента, когда становится единственно важной. Причём чаще всего проблема не в отсутствии копий, а в том, что они есть, но не работают.
Что копировать
Сайт состоит из двух частей, и обе нужны.
Файлы: код, шаблоны, загруженные изображения и документы, конфигурация.
База данных: содержимое страниц, товары, заказы, пользователи, настройки.
Классическая ошибка — копировать только одно. Файлы без базы дают пустой сайт, база без файлов — данные, которые нечем показать.
Отдельно стоит помнить про то, что не входит в копию сайта, но нужно для восстановления: доступы к хостингу и домену, ключи внешних сервисов, настройки почты.
Как часто
Частота определяется одним вопросом: потерю какого объёма работы вы готовы пережить.
| Тип сайта | Файлы | База |
|---|---|---|
| Визитка, корпоративный сайт | Раз в неделю | Раз в неделю |
| Сайт с блогом | Раз в неделю | Раз в 1–3 дня |
| Интернет-магазин | Ежедневно | Ежедневно, лучше чаще |
| Сервис с пользователями | Ежедневно | Несколько раз в день |
Плюс отдельная копия перед каждым существенным изменением: обновлением платформы, установкой новой функциональности, миграцией. Это правило спасает чаще всего, потому что большинство инцидентов происходит не от атак, а от собственных действий.
Где хранить
Ключевое требование: не там же, где сайт.
Копия на том же сервере бесполезна в трёх самых вероятных сценариях: сервер вышел из строя, аккаунт хостинга скомпрометирован, шифровальщик добрался до всех доступных данных.
Рабочая схема на два уровня:
Первый — автоматические копии хостинга. Быстро восстанавливаются, покрывают большинство бытовых ситуаций.
Второй — независимая копия в другом месте: облачное хранилище или другой сервер. Страховка на случай проблем с самой площадкой.
Что ещё спросить у провайдера при выборе — в статье как выбрать хостинг.
Глубина хранения
Одной последней копии недостаточно.
Проблема часто обнаруживается не сразу: сайт заражён неделю назад, а заметили сегодня. Если хранится только последняя копия, она уже содержит заражение.
Разумная схема: несколько ежедневных копий за последнюю неделю, несколько еженедельных за последний месяц, одна-две ежемесячные.
Главное правило: проверяйте восстановление
Копия, которую ни разу не разворачивали, — не копия, а предположение.
Типичные сюрпризы, которые обнаруживаются в самый неподходящий момент:
- копируется база, но не файлы, или наоборот;
- архив повреждён и не распаковывается;
- копирование падает с ошибкой уже три месяца, а уведомлений никто не настроил;
- восстановление занимает шесть часов, хотя все думали, что двадцать минут;
- копия есть, а пароля от архива никто не помнит.
Проверяйте восстановление раз в квартал. Развернуть копию на тестовом адресе и убедиться, что сайт работает, — час работы, который окупается один раз, но полностью.
Это одна из тех задач, которые входят в нормальную поддержку сайта и о которых вспоминают только после инцидента.
Кто за это отвечает
Вопрос, который нужно закрыть явно.
Варианты: хостинг делает автоматически, подрядчик на поддержке, ваш штатный специалист. Плохой вариант — «наверное, хостинг делает».
Проверьте прямо сейчас три вещи: где хранятся копии, за какой период, и кто получает уведомление, если копирование не удалось.
Если на любой из вопросов нет ответа — резервного копирования у вас, скорее всего, нет.
Что делать, если копии нет
Ситуация неприятная, но не всегда безнадёжная.
Проверьте копии хостинга — они могут быть даже если вы их не настраивали.
Кеш поисковых систем и веб-архивы — оттуда иногда удаётся вытащить тексты и структуру страниц. Изображения и базу данных так не вернуть.
Локальные копии — макеты у дизайнера, тексты в почте, изображения у фотографа.
Чаще всего приходится восстанавливать сайт заново, и стоит это как новая разработка. Именно поэтому копии дешевле любых последствий их отсутствия.
Связь с безопасностью
Резервное копирование — не защита от взлома, а способ пережить его последствия.
При компрометации порядок такой: снять сайт с доступа, сменить все пароли, восстановиться из заведомо чистой копии (не последней, а той, что точно старше момента заражения), обновить всё, найти точку входа. Подробно — в статье безопасность сайта.
Именно здесь и выясняется ценность глубины хранения: если у вас только вчерашняя копия, восстанавливаться не из чего.
Итог
Копируйте файлы и базу вместе. Частота — по тому, сколько работы не жалко потерять. Храните минимум в двух местах, одно из которых не связано с хостингом. Держите несколько версий за разные даты.
И главное — раз в квартал проверяйте восстановление. Всё остальное в этой статье бессмысленно, если копия не разворачивается.
Частые вопросы
Как часто делать резервные копии?+
Для сайта, где контент меняется редко, — раз в неделю. Для магазина с заказами — ежедневно, а базу данных лучше чаще. Правило простое: частота копий определяется тем, потерю какого объёма работы вы готовы пережить.
Достаточно ли копий, которые делает хостинг?+
Как основа — да, но с двумя оговорками: они хранятся на той же площадке, что и сайт, и глубина хранения обычно небольшая. Заражение, обнаруженное через месяц, может оказаться уже во всех доступных копиях. Поэтому нужна ещё одна копия в другом месте.
Почему копию нужно проверять?+
Потому что копия, которую ни разу не разворачивали, — это предположение, а не резервная копия. Типичные сюрпризы: копируется база без файлов, архив повреждён, копирование давно падает с ошибкой, и никто об этом не знает.
Что делать, если бэкапа нет, а сайт потерян?+
Проверить копии хостинга, кеш поисковых систем и веб-архивы — оттуда иногда удаётся восстановить тексты и структуру. Изображения и базу данных так не вернуть. Чаще всего приходится восстанавливать сайт заново, и это стоит как новая разработка.
Читайте также
- Что такое CRM простыми словами и зачем она сайтуОбъяснение без терминов: что такое CRM-система, какие задачи она решает, чем отличается от таблицы и когда её пора заводить небольшой компании.4 мин
- CRM для отдела продаж: как связать её с сайтом и не терять заявкиКак настроить CRM под реальный процесс продаж: воронка, обязательные поля, распределение заявок, контроль сроков. Что передавать с сайта и сколько стоит внедрение.4 мин
- Хостинг для WordPress: как выбрать и на чём нельзя экономитьКакие требования у WordPress к хостингу, чем отличается дешёвый тариф от нормального, когда пора на VPS и какие параметры реально влияют на скорость сайта.4 мин
- Интеграция сайта с Wildberries и Ozon: остатки, цены, заказыКак связать свой сайт и учётную систему с маркетплейсами: что синхронизировать, откуда берутся расхождения в остатках, сколько стоит и что делать при сбоях.4 мин