Ситуация
Сайт собирается в статические файлы, хостинг принимает их по FTP. Любое обновление контента (статья, новость, цена, отзыв) значило: собрать сайт у себя, вручную загрузить файлы на хостинг и проверить, что ничего не потерялось. Это отнимало время и оставляло место для ошибок: выложить не ту сборку, забыть файл, залить недописанное.
Задача
Сделать так, чтобы обновление контента не требовало ручных действий и не зависело от того, на чьём компьютере собирают сайт: правка текста должна доходить до посетителей за минуты и безопасно.
Решение
- Контент: страницы, новости, статьи и отзывы лежат текстовыми файлами Markdown рядом с кодом, под контролем версий.
- Триггер: пуш в основную ветку запускает выкладку; правки документации (README, docs) её не запускают.
- Сборка: GitHub Actions ставит зависимости и собирает статический сайт на чистой машине, а не на чьём-то компьютере.
- Проверка: если сборка упала, выкладки не происходит, и на проде остаётся предыдущая рабочая версия; перед выгрузкой проверяется содержимое сборки.
- Выгрузка: готовые файлы автоматически уходят на хостинг по FTP; данные доступа хранятся в защищённых настройках репозитория, а не в коде.
- Откат: возврат к прошлой версии сводится к откату коммита в Git, выкладка повторяется сама.
Результат
- От «поправил текст» до «изменение на проде» — один git push, без ручной загрузки файлов.
- Ошибка сборки не доходит до посетителей: выкладка идёт только после успешной сборки.
- Любое обновление контента проходит одним и тем же путём и оставляет историю изменений.
- Схема работает на личном блоге и на сайте клиники.
Похожая задача? Начните с бесплатного ИИ-аудита: несколько вопросов о вашем бизнесе, и вы получите страницу с разбором.