← Все кейсыДеплой

Автоматическая выкладка сайта: от правки текста до прода одним пушем

Ситуация

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

Задача

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

Решение

  • Контент: страницы, новости, статьи и отзывы лежат текстовыми файлами Markdown рядом с кодом, под контролем версий.
  • Триггер: пуш в основную ветку запускает выкладку; правки документации (README, docs) её не запускают.
  • Сборка: GitHub Actions ставит зависимости и собирает статический сайт на чистой машине, а не на чьём-то компьютере.
  • Проверка: если сборка упала, выкладки не происходит, и на проде остаётся предыдущая рабочая версия; перед выгрузкой проверяется содержимое сборки.
  • Выгрузка: готовые файлы автоматически уходят на хостинг по FTP; данные доступа хранятся в защищённых настройках репозитория, а не в коде.
  • Откат: возврат к прошлой версии сводится к откату коммита в Git, выкладка повторяется сама.

Результат

  • От «поправил текст» до «изменение на проде» — один git push, без ручной загрузки файлов.
  • Ошибка сборки не доходит до посетителей: выкладка идёт только после успешной сборки.
  • Любое обновление контента проходит одним и тем же путём и оставляет историю изменений.
  • Схема работает на личном блоге и на сайте клиники.

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