Grav — это современная CMS с открытым исходным кодом, написанная на чистом PHP и работающая без базы данных (Flat-File). Вся информация, настройки и контент хранятся в виде обычных текстовых файлов и Markdown-документов. Это обеспечивает максимальную скорость отдачи страниц, ничтожное потребление оперативной памяти и моментальное резервное копирование простым архивированием папки сайта.
Основная ценность Grav для гибридных проектов — встроенная в ядро мультиязычность и полная свобода в верстке: для главной страницы можно задать изолированный HTML5/CSS3 шаблон со своим Native JS, а остальные страницы использовать как структурированную Wiki.
Grav Core: Только ядро системы, CLI-инструмент (утилита gpm), базовый шаблон. Для разработчиков, которые управляют контентом через IDE (например, Cursor), синхронизируют файлы по FTP/SSH или используют Git. Контент пишется в .md файлах на диске.
Grav + Admin Plugin для тех, кому нужен визуальный интерфейс для создания страниц, управления плагинами, обновлениями и настройками мультиязычности через браузер.
Версия Grav + Admin удобнее для быстрого старта, так как позволяет настраивать языковые пространства имен в кликабельном интерфейсе, но под капотом она создает точно такие же текстовые конфигурационные файлы, как и Core.
Установка Grav сводится к банальной распаковке архива. Ему не нужны компиляторы или сложные системные зависимости. Подключитесь к VPS по SSH, перейдите в корневую директорию веб-сервера и скачайте актуальную версию (в примере берем вариант с админ-панелью):
cd /var/www/ wget https://getgrav.org/download/core/grav-admin/latest unzip latest
Что нужно сделать прямо сейчас (Первый запуск):
Суть бага: В мультиязычном режиме на стеке PHP 8.3 + Nginx/PHP-FPM встроенный веб-редактор (Admin Panel) критически сбоит при попытке перевести страницу на новый язык, файла которого еще физически нет на диске. Вместо генерации нового языкового файла (например, default.pt-br.md), админка паникует, выдает ворнинг Falling back to English language и перезаписывает содержимое мастер-файла (default.md) новым переводом.
Решение: Полный отказ от забагованной панели Admin Panel для мультиязычных pSEO-проектов. Управление контентом напрямую через текстовые файлы Markdown (default.md, default.ru.md, default.pt-br.md) силами ядра Grav Core работает как швейцарские часы и полностью исключает риск перезаписи данных.
Безопасный алгоритм работы:
cd user/pages/имя-папки touch default.ru.md default.uk.md default.pt-br.md
Всё делается в пару кликов: