Бэкапа на хостинге недостаточно: внешняя копия, схема 3-2-1 и живой кейс | Мастерская — статьи по WordPress, OpenCart и серверам | de-bor.ru

Частный web-мастер Денис Борисов
WordPress-сайтов

Бэкапа на хостинге недостаточно: внешняя копия, схема 3-2-1 и живой кейс

Безопасность и восстановление · 2026-10-14 · обновлено 2026-10-14 · 17 мин чтения
Большинство владельцев сайтов уверены: раз хостинг делает резервные копии, данные в безопасности. Но пожар в дата-центре, авария провайдера, блокировка аккаунта или шифровальщик могут лишить вас одновременно и сайта, и его копий. В этой статье разберём, почему нельзя полагаться только на хостинговый бэкап, как устроена схема 3-2-1-1-0 и как организовать резервное копирование на примере действующей подписки для интернет-магазина. В конце — пошаговая инструкция, которую можно использовать как основу для собственного решения.

Почему копии на хостинге — это не полноценная защита

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

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

Повреждение инфраструктуры может нарушить работу облачных сервисов

В октябре 2026 года Яндекс сообщил о повреждениях дата-центров в Сасово и Калуге. В опубликованном компанией материале также говорится, что после атаки в ночь на 11 октября работа дата-центра во Владимире была остановлена. Компания описала последствия для инфраструктуры и восстановление сервисов.

Источники: официальный разбор Яндекса о состоянии дата-центров и сообщение Яндекс 360 от 13 октября.

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

Независимая резервная копия не предотвращает аварию и не гарантирует бесперебойную работу. Она даёт возможность восстановить данные, когда основной контур недоступен или повреждён.

Хостер может потерять связь с интернетом

2 июня 2026 года произошёл случай из моей практики. У крупного российского хостера, по сообщениям самого провайдера в день аварии, одновременно возникли проблемы с двумя магистральными операторами связи.

Сайты, включая интернет-магазин одного из моих клиентов, были недоступны около получаса. По данным моего мониторинга Netdata, трафик упал в 4–5 раз. Сам сервер работал штатно: проблема находилась за пределами сайта, и восстановить доступность собственными действиями на сервере было невозможно.

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

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

Аккаунт могут заблокировать

Типичный сценарий: злоумышленник взламывает WordPress через уязвимый плагин, заражённый сайт начинает рассылать спам или выполнять подозрительные команды, после чего хостинг блокирует аккаунт.

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

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

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

Человеческий фактор и шифровальщики

База удалена одной командой. Обновление повредило сайт. Подрядчик случайно удалил нужный каталог. Вирус-шифровальщик добрался до сетевой папки с резервными копиями.

Во всех этих случаях оригинал и копии могут пострадать одновременно, если они находятся рядом и доступны тем же людям, скриптам или учётным записям.

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

Вывод

Хостинговый бэкап — полезная первая линия защиты от собственных ошибок. Но он не заменяет независимую резервную копию, которая переживёт потерю основной площадки, блокировку аккаунта или компрометацию сервера.

Идеальная схема: 3-2-1-1-0

Один из распространённых принципов резервного копирования — правило 3-2-1. Это практическая модель организации защиты данных, а не единый обязательный стандарт для каждого сайта.

Смысл правила тот же, что закреплён и в российских требованиях к защите данных: копии должны существовать, переживать потерю основной площадки и проверяться восстановлением.

Расширенная формула выглядит так.

3 копии данных. Оригинал плюс две резервные копии. Одна резервная копия уже лучше, чем отсутствие копий, но оставляет мало запаса на случай повреждения или потери самого носителя.

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

1 копия вне основной площадки — offsite. Другой дата-центр, независимый провайдер или отдельное физическое место хранения. Такая копия помогает пережить потерю основного здания или инфраструктуры.

1 копия офлайн или неизменяемая — immutable. Её нельзя удалить или перезаписать обычными учётными данными, даже если злоумышленник получил контроль над сервером сайта. Примеры — отключённый накопитель, WORM-хранилище или объектное хранилище с настроенной политикой неизменяемости.

0 ошибок при проверке. Резервная копия может существовать, но её пригодность для восстановления не подтверждена, пока не проверены целостность данных и сама процедура восстановления.

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

Важно различать два понятия: внешняя копия и неизменяемая копия — не одно и то же. Резерв на другом сервере защищает от некоторых аварий основной площадки, но если сервер сайта может удалить его через доступные учётные данные, он остаётся уязвимым для шифровальщика.

Живой кейс: подписка на бэкапы интернет-магазина

Один из моих клиентов — интернет-магазин на OpenCart примерно с 50 тысячами заказов. База данных занимает около 45 МБ, общий объём файлов сайта — около 4 ГБ.

Во время разработки и доработок я делал локальные копии перед изменениями. Они хранились у исполнителя, а не на рабочем сервере. Осенью 2026 года разовые резервные копии заменили постоянно работающей системой.

Как устроено резервное копирование

База данных — каждые три дня по расписанию cron. Задание запускается в 02:00 в дни 1, 4, 7 и далее. Дамп передаётся непосредственно во внешнее хранилище, без необходимости сохранять промежуточный файл на рабочем сервере. Хранятся 10 копий.

Файлы сайта без изображений, включая конфигурации, — каждое воскресенье. Хранятся 5 копий.

Ежемесячный L3-отчёт — сверка версии MySQL, количества таблиц и заказов, а также контрольных сумм файлов. Это помогает обнаруживать изменения и потенциальные проблемы.

Ежедневный log-scan — сравнение логов с предыдущим днём и отправка уведомлений в Telegram при появлении записей, соответствующих настроенным правилам обнаружения.

Доступ клиента — ссылка на файловое хранилище с паролем. Клиент может самостоятельно посмотреть доступные резервные копии, не полагаясь только на отчёт исполнителя.

Как прошёл первый запуск

Первый прогон дал следующие результаты:

  • База данных: 44 МБ, 19 секунд, 198 таблиц.
  • Файлы без изображений: около 756 МБ из примерно 4 ГБ общего объёма сайта.
  • Количество файлов в выбранном наборе: 19 199.

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

Что эта подписка защищает, а что нет

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

Но это не полная реализация 3-2-1-1-0. В текущей конфигурации нет отдельного неизменяемого или офлайн-слоя. Кроме того, соответствие требованию о двух разных типах носителей зависит от конкретной инфраструктуры хранения.

Это осознанный компромисс по стоимости для малого бизнеса. Ротация помогает вернуться к более ранней копии, если проблема обнаружена не сразу. Мониторинг позволяет заметить сбои резервирования. Но ни ротация, ни уведомления не защищают от злоумышленника, который получил права на удаление всех копий.

Для более высокой устойчивости к шифровальщикам и компрометации сервера нужен отдельный изолированный слой — например, хранилище с неизменяемостью объектов или офлайн-копия.

Сколько стоит день без сайта

Резервное копирование — это расходы на снижение риска. Чтобы понять, оправданы ли они для бизнеса, нужно оценить последствия простоя.

Ущерб может складываться из трёх частей:

  1. Недополученная маржа за время простоя — не вся выручка, а доход за вычетом переменных расходов.
  2. Стоимость аварийных работ: срочное восстановление, время сотрудников, обработка обращений клиентов.
  3. Репутационные потери: часть покупателей может не вернуться после неудачной попытки оформить заказ.

Условный пример

Предположим, дневная маржа интернет-магазина составляет 100 000 рублей. Сайт не работает сутки. Аварийные работы стоят ещё 20 000–50 000 рублей.

В таком сценарии прямой потенциальный ущерб составит примерно 120 000–150 000 рублей. В спокойном случае восстановление может обойтись дешевле, а некоторые последствия вообще не возникнут. Репутационные потери в расчёт не включены.

Для сравнения: ориентир по описанной подписке — настройка от 10 000 рублей разово и ведение от 2 000 рублей в месяц.

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

Как рассчитать собственный лимит

Возьмите среднюю дневную маржу за последние 90 дней, умножьте её на реалистичное количество дней простоя и добавьте стоимость одного-двух дней работы специалиста.

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

Соберите такую схему за 5 шагов

Шаг 1. Проведите аудит: что нельзя потерять

Составьте список данных и настроек, необходимых для восстановления сайта:

  • база данных;
  • пользовательские файлы, загрузки и изображения;
  • конфигурации nginx, PHP-FPM, MySQL и других используемых сервисов;
  • список заданий cron и их конфигурации;
  • SSL-сертификаты и необходимые приватные ключи;
  • инструкции по восстановлению и перечень необходимых доступов.

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

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

Шаг 2. Разделите базу данных и файлы

У разных данных разная частота изменений.

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

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

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

Конфигурации следует резервировать при каждом изменении и хранить эталонную копию.

Шаг 3. Настройте расписание и ротацию

Пример расписания для типового интернет-магазина:

0 2 */3 * * /opt/backups/db-stream.sh
0 3 * * 0 /opt/backups/files-stream.sh
0 4 16 * * /opt/backups/l3-report.sh
0 6 * * * /opt/backups/log-scan.sh

Здесь:

  • база данных копируется в 02:00 в дни 1, 4, 7 и далее;
  • файлы копируются по воскресеньям в 03:00;
  • L3-отчёт формируется 16-го числа каждого месяца;
  • проверка логов запускается ежедневно в 06:00.

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

Что копироватьРекомендуемая частотаПример храненияДля чего
База данныхКаждые 1–3 дня10 копийОткат к более раннему состоянию
Файлы без изображений и конфигурацииРаз в неделю5 копийВосстановление кода и настроек
Изображения и статикаРаз в 2–4 недели, если изменения редкие2–3 копииСнижение объёма хранения
L3-отчётРаз в месяц12 месяцевАнализ изменений во времени

Это стартовые ориентиры, а не универсальные значения. Частота резервирования зависит от RPO — максимально допустимой потери данных. Скорость восстановления и срок возвращения сайта в работу связаны с RTO.

Десять копий сами по себе не означают месяц истории. Реальная глубина хранения зависит от частоты резервирования, ротации и успешности заданий.

Важный нюанс cron. Запись */3 в поле дня месяца даёт запуски 1, 4, 7 и далее. Это не строгий интервал в 72 часа: на границе месяцев интервал может оказаться короче. Пропущенный запуск cron автоматически не воспроизводится.

Если нужен периодический запуск с интервалом относительно предыдущего срабатывания, можно использовать systemd-таймер с OnUnitActiveSec=. Но механизм восстановления после пропуска необходимо проектировать отдельно: Persistent=true предназначен для календарных таймеров OnCalendar= и не обеспечивает догон пропущенных запусков монотонного таймера. Даже у календарного таймера после простоя речь идёт о запуске для обработки пропуска, а не о последовательном воспроизведении каждого пропущенного интервала.

Независимо от расписания полезно проверять время последнего успешного резервирования и отдельно сигнализировать, если ожидаемая копия не появилась.

Ключевой приём — передача без промежуточного файла на рабочем сервере. Дамп можно направлять непосредственно в удалённое хранилище. Это снижает потребность в свободном месте на сервере и исключает необходимость оставлять временный архив в каталоге сайта.

Однако есть три важных условия.

  1. Согласованность дампа. Потоковая передача сама по себе её не гарантирует. Результат зависит от движков таблиц и параметров дампа. Для InnoDB обычно используют согласованный снимок, например --single-transaction, если ограничения схемы это позволяют. Для MyISAM и других нетранзакционных таблиц могут потребоваться блокировки.
  2. Проверка результата. Нужно контролировать коды завершения и самого дампа, и передачи. Успешно созданный удалённый файл ещё не доказывает, что в нём содержатся все необходимые данные.
  3. Безопасная ротация. Старые копии удаляют только после того, как новая копия успешно передана и прошла предусмотренные проверки. Частичный дамп не должен заменять последнюю проверенную резервную копию.

Шаг 4. Вынесите копии наружу

Для внешнего хранения подойдёт отдельный сервер, независимое объектное хранилище, NAS в другом здании или внешний накопитель с продуманной ротацией.

Главное — не хранить единственные резервные копии на том же сервере или в той же физической площадке, что и оригинал.

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

Пароли храните в менеджере паролей, а не в переписке или открытых конфигурациях. Если копии содержат персональные данные или другие конфиденциальные сведения, предусмотрите шифрование при передаче и хранении.

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

Шаг 5. Добавьте мониторинг

Резервное копирование, которое молча перестало работать, может создать ложное чувство безопасности. Об ошибке нельзя узнавать только в день аварии.

Минимальный набор мониторинга:

  • уведомление об успехе или ошибке каждого задания;
  • размер созданной копии и время выполнения;
  • проверка, что копия действительно появилась во внешнем хранилище;
  • оповещение, если резервирование не выполнялось дольше установленного срока;
  • периодическая сверка данных;
  • регулярное пробное восстановление.

В описанной подписке используются ежедневный анализ логов и Telegram-уведомления по заданиям. Но уведомление о завершении скрипта не заменяет проверку пригодности копии для восстановления.

Как проверить, что бэкап рабочий

1. Проверяйте количество объектов и размер

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

Если обычно дамп занимает 45 МБ, а сегодня получился файл на 300 КБ, это повод проверить результат. Причиной может быть ошибка подключения, пустая база или некорректное выполнение скрипта.

Сами по себе размер и количество объектов не доказывают корректность данных, но помогают быстро обнаружить очевидные отклонения.

2. Проверяйте контрольные суммы

Контрольные суммы помогают убедиться, что файл не изменился при передаче или хранении.

MD5 может использоваться для обнаружения случайного повреждения, но для новых систем разумнее применять SHA-256. При этом совпадение хешей подтверждает совпадение содержимого файлов, а не корректность самой базы данных или пригодность сайта к запуску.

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

3. Проводите пробное восстановление

Для критичных сайтов полезно ориентироваться на квартальный тест восстановления. В зависимости от требований бизнеса тестировать процедуру можно чаще.

Базовая последовательность:

  1. Подготовить отдельный стенд.
  2. Получить резервную копию и проверить её целостность.
  3. Развернуть необходимые файлы сайта.
  4. Восстановить базу данных.
  5. Настроить окружение и конфигурации.
  6. Проверить вход в административную панель, открытие страниц, работу форм и оформление тестового заказа.
  7. Зафиксировать результат, время восстановления и найденные проблемы.

Не проверяйте процедуру впервые на рабочем сайте во время аварии. Контрольные суммы не заменяют пробное восстановление: файл может быть целым, но содержать неполные данные или не подходить для используемой версии приложения.

4. Сверяйте копию с рабочими данными с учётом времени

L3-отчёт может сравнивать количество заказов, товаров, пользователей и другие показатели.

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

Расхождение становится поводом для расследования, когда оно превышает ожидаемую разницу между моментом резервирования и моментом проверки либо не объясняется нормальной работой сайта.

Когда схема не сработает

Даже организованное резервирование не устраняет все риски.

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

Копии никогда не восстанавливали. Файлы могут быть повреждены, дамп — неполным, а процедура развёртывания — зависеть от неизвестных настроек.

Нет мониторинга. Скрипт мог перестать работать месяц назад, а владелец узнает об этом только при аварии.

Потеряны доступы и ключи. Зашифрованная копия без ключа или рабочая база без необходимых доступов могут оказаться бесполезными.

Есть ротация, но нет неизменяемости. Десять копий не спасут, если злоумышленник может удалить все десять. Для этого нужен отдельный изолированный или неизменяемый слой.

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

Хостинг и так делает бэкапы каждый день. Зачем мне ещё что-то?
Хостинговые копии полезны и отказываться от них не нужно. Но они могут быть недоступны при аварии площадки, блокировке аккаунта или компрометации инфраструктуры. Дополнительная копия в независимом месте уменьшает зависимость от одного провайдера.
Как часто копировать базу и файлы?
Для небольшого магазина отправная точка — база каждые 1–3 дня, файлы раз в неделю, конфигурации при каждом изменении. Но частота зависит от допустимой потери данных. Если магазин не может позволить себе потерять даже несколько часов заказов, резервирование раз в три дня не подходит.
Сколько хранить копий?
В описанном кейсе хранятся 10 копий базы и 5 копий файлов. Это пример конкретной конфигурации, а не универсальная норма. Глубина хранения должна учитывать время обнаружения ошибок: если взлом заметили через неделю, важно иметь возможность вернуться к состоянию до инцидента.
Подойдёт ли облако как внешнее хранилище?
Да, если оно действительно независимо от основного хостинга. Проверьте физическое расположение данных, правила доступа, защиту от удаления и возможность выгрузить копии при недоступности основного провайдера. Само слово «облако» не гарантирует независимость.
Что делать, если сайт уже упал, а бэкапа нет?
Сначала сохраните текущее состояние, насколько это возможно: не удаляйте файлы и не перезаписывайте базу поспешными попытками восстановления. Если есть подозрение на взлом, отдельно сохраните доступные журналы и сведения об инциденте. Затем запросите копии у хостера: иногда существуют резервные данные, не отображающиеся в панели. После этого определите, что можно восстановить, и оцените, требуется ли помощь специалиста. Когда сайт снова заработает, настройте резервирование, не откладывая до следующего инцидента.
Сколько стоит такая подписка?
Ориентир по кейсу из статьи — настройка от 10 000 рублей разово, ведение от 2 000 рублей в месяц. Итоговая цена зависит от количества сайтов, объёма данных, частоты копирования, глубины хранения и требований к восстановлению. Дополнительные расходы могут потребоваться на независимое хранилище, неизменяемые копии и стенд для тестирования восстановления.
Внешний диск дома — это уже offsite?
Относительно серверного хостинга — да, если диск находится в другом физическом месте. Он может помочь при атаке на хостера или блокировке аккаунта. Но если диск лежит дома рядом с компьютером, он не защищает от пожара, кражи или других происшествий в этом здании. Для более устойчивой схемы нужна ещё одна копия в другом месте.
Нужно ли шифровать резервные копии?
Если копии содержат персональные данные, необходимо обеспечить их защиту с учётом применимых требований законодательства. В частности, статья 19 Федерального закона № 152-ФЗ (действующая редакция) предусматривает меры по обеспечению безопасности персональных данных; конкретные меры зависят от обстоятельств обработки и применимых требований, включая постановление Правительства РФ № 1119 и приказ ФСТЭК России № 21. Это не означает, что закон буквально предписывает шифровать абсолютно каждую резервную копию во всех случаях. Но если копии покидают основной контур, шифрование — важная мера снижения риска. Пароль или ключ шифрования храните отдельно от резервных копий, с контролем доступа и предусмотренной процедурой восстановления. Зашифрованный архив без доступного ключа не поможет вернуть сайт.

Итог

Резервное копирование — это не просто файл, который иногда появляется на сервере. Это система, которая должна создавать копии, сохранять их независимо от оригинала, обнаруживать ошибки и позволять восстановить рабочий сайт.

Для начала достаточно трёх действий: вынести копию за пределы основного хостинга, настроить контроль успешности резервирования и хотя бы периодически проверять восстановление. Затем можно добавить неизменяемый слой и автоматизировать дополнительные проверки.

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

Настрою бэкапы, которые переживут и пожар, и хостера

Аудит текущих копий, схема 3-2-1 под ваш сайт, автоматика с уведомлениями и проверкой восстановления. Веду подписки как в кейсе из статьи — копии видите вы, а не только я.

Написать в Написать в

Сопровождение и поддержка сайта

Сопровождение и поддержка сайта

Защита, обновление, мониторинг, чистка вирусов.

от 5.400 ₽/мес

Подробнее
SEO аудит

SEO аудит

Проверка сайта после взлома.

1.800

Подробнее

Разрабатываю WordPress-сайты

Лендинги, многостраничные сайты, интернет-магазины на WooCommerce — всё на WordPress с удобной панелью управления.

Сайт под ключ: регистрация домена и хостинга, установка WordPress, настройка шаблона и модулей.

Поддерживаю WordPress-сайты

Обновление плагинов и тем, резервное копирование, мониторинг работоспособности — сайт работает без сбоев.

Оперативное исправление ошибок, создание новых разделов, доработка функционала и наполнение контентом.

Продвигаю WordPress-сайты

SEO-оптимизация, настройка Яндекс Метрики и Вебмастера, подключение Google Search Console.

Оптимизация позволяет «поднять» сайт в поисковых выдачах, увеличить целевой трафик и привлечь новых клиентов.

Чистка от вирусов WordPress

Если сайт взломали, появился подозрительный код или спам-рассылка — найду и удалю вредоносный код, закрою уязвимости и настрою защиту от повторного заражения.

После чистки проверю все файлы и плагины, обновлю WordPress до актуальной версии и настрою автоматическое резервное копирование.

Диагностика сайта

Проверю ваш сайт по ключевым параметрам и подготовлю отчёт с рекомендациями:

  • Скорость загрузки и производительность;
  • Безопасность и уязвимости;
  • SEO-состояние и индексация;
  • Мобильная адаптация;
  • Технические ошибки и код.
Заказать диагностику
Михайлова Анастасия

Денис МАСТЕР своего дела. Вёл целый проект, работали с ним на протяжении 4х месяцев. Отзывчивый, понимающий с полуслова специалист. Стоимость услуг радует, а качество работы приводит в восторг.

Денис спасибо Вам от лица нашей строительной компании и от всего нашего персонала.

Михайлова Анастасия

Игорь Караваев

Обратился к Денису для восстановления сайта на WordPress после сбоя. Сделал, как и обещал, за сутки — сайт снова работает без ошибок. Профессионал своего дела, доходчиво объясняет, вежлив и тактичен. Однозначно рекомендую!

Игорь Караваев

Яна Веркулич

Денис, спасибо огромное за работу)) Очень тепло вспоминаю Вас и все что Вы сделали для моей работы и моего сайта.

Денис Профессионал с большой буквы, решает любые вопросы, отличный специалист))

Рекомендую к сотрудничеству, еще раз спасибо)

Яна Веркулич

Бюро Переводов

Денис оперативно и грамотно справляется со всеми поставленными задачами. Внес правки на англоязычную и русскоязычную версии сайта, учел все пожелания. Будем обращаться еще!

Бюро Переводов

Анастасия Виричева

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

Делал сайт для салона красоты, просто и функционально.

Анастасия Виричева

Владимир

Очень много времени мучались с сайтом на OpenCart. «Специалисты» не могли нормально разобраться в проблеме, возникавшей при выполнении элементарной задачи.

Денис сделал это в два счета, также расписал подробно, в чем была проблема и как она решена. На 200% доволен. Даже не хочется его рекомендовать, потому что будет постоянно занят))

Владимир

Ксения Петровская

Денис оперативно ответил и помог решить проблему, которую я даже описать нормально не могла)) Мы сами что-то накрутили с корпоративной почтой — письма то уходили, то нет, в общем всё сломали.

Денис всё починил, теперь у нас нормальная почта, домен работает, письма приходят и уходят. Цена как заявлена — оплатили по факту проверки. Спасибо большое!

Ксения Петровская

Александр Кривуля

Заказал у Дениса доработать сайт на WordPress. При этом трудно себе представлял, что сам хочу. Благодаря профессионализму Дениса и его умению всё грамотно и просто объяснять, предлагать разные варианты решений — цель была достигнута.

Умение общаться доходчиво и терпеливо с клиентами — огромный плюс. Я очень доволен. Однозначно рекомендую!

Александр Кривуля

Кондитер мания

Прекрасный специалист, ответил и устранил ошибку на сайте за пару часов, сохранила контакт, будем по необходимости обращаться. Рекомендую!

Кондитер мания

Бесплатная настройка хостинга и домена

Регистрация хостинга на 1 месяц и домена .ru/.рф на 1 год входит в стоимость разработки сайта.

Подробнее