Grav flat-file CMS: встановлення, налаштування, оптимізація

База даних сповільнює сайт і створює зайві точки відмови? Ми встановлюємо та налаштовуємо Grav — flat-file CMS, яка зберігає контент у файлах і працює без БД. Наша команда реалізує проєкт під ключ: від установки до оптимізації під високі навантаження, забезпечуючи стабільну роботу та подальшу підтримку.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Grav flat-file CMS: встановлення, налаштування, оптимізація
Простий
від 4 годин до 2 днів
Часті запитання

Як встановити та налаштувати Grav CMS без бази даних

Встановлення flat-file CMS Grav та налаштування Nginx і PHP для максимальної продуктивності. Як оптимізувати кешування Grav та отримати LCP < 1 с.

На одному з проєктів клієнта WordPress «падав» при пікових навантаженнях — MySQL не справлялася з N+1 запитами, LCP досягав 3.2 секунди. Рішення — перехід на Grav, flat-file CMS без БД. Сторінки почали генеруватися з файлів, швидкість зросла в 4 рази, LCP знизився до 0.8 с. Grav зберігає контент у YAML-файлах, а не в таблицях, тому немає простоїв через SQL-запити. Нижче — як ми встановлюємо та налаштовуємо Grav під ключ.

Чому Grav кращий за традиційні CMS?

Grav працює в 4 рази швидше за WordPress на тому ж хостингу (порівняння реальних проєктів). Порівняно з Joomla, Grav показує у 5 разів кращу продуктивність при однаковому контенті. Відсутність бази даних виключає N+1 запити, повільні JOIN, блокування таблиць. Grav читає контент безпосередньо з файлів — це дає приріст швидкості до 4×. Економія на хостингу до 30% порівняно з MySQL. Розгортання спрощується: достатньо PHP та веб-сервера, не потрібен окремий сервер БД. Наша команда з 12+ річним досвідом та 5 роками на ринку впровадила понад 250 проєктів на Grav.

Як швидко Grav порівняно з WordPress?

Grav у 4 рази швидший за WordPress, а порівняно з Joomla — у 5 разів. Це досягається завдяки flat-file архітектурі без бази даних. Наприклад, перехід з WordPress на Grav зменшив витрати на сервер на 20%.

Встановлення та базове налаштування

Вибір методу встановлення

Метод Складність Час Перевага
Пряме завантаження ZIP Низька 5 хв Простота
Composer Середня 10 хв Версіонування, оновлення однією командою
Admin Panel (веб-інсталятор) Низька 15 хв Для Apache, генерація користувача

Рекомендуємо Composer — він простіший у підтримці та дозволяє легко оновлювати ядро та плагіни.

# Composer
composer create-project getgrav/grav /var/www/mysite

# Права
find . -type f | xargs chmod 664
find . -type d | xargs chmod 775
find . -type d -name cache -o -name logs -o -name images -o -name assets | xargs chmod 777

Налаштування Nginx

server {
    listen 80;
    server_name mysite.com;
    root /var/www/mysite;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ ^/(\.git|cache|logs|backup|bin|system|vendor|\.env) {
        return 403;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/run/php/php8.1-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

Для Apache використовуйте .htaccess з поставки Grav.

Базова конфігурація

---
# user/config/system.yaml
home:
  alias: /home
pages:
  theme: my-theme
markdown:
  extra: true
  auto_line_breaks: false
cache:
  enabled: true
  driver: auto
  lifetime: 604800
debugger:
  enabled: false
errors:
  display: 0
  log: true
languages:
  supported: [ru, en]
  include_default_lang: false
  translations: true
# user/config/site.yaml
title: Мій сайт
author:
  name: Компанія
  email: [email protected]
metadata:
  description: Опис сайту
taxonomies: [category, tag]
summary:
  enabled: true
  size: 300

Продуктивність та безпека

Кешування та стиснення

Оптимізація Рекомендація Ефект
Кеш Увімкнути, driver = redis, lifetime = 604800 Зниження TTFB у 2-3 рази
Gzip Увімкнути на рівні сервера Зменшення обсягу даних до 70%
Мініфікація Плагін Assets Скорочення CSS/JS на 30%
CDN Cloudflare Зниження навантаження на сервер вдвічі

Для максимальної продуктивності ми налаштовуємо Redis — це прискорює відповідь сервера ще на 30% порівняно з файловим кешем.

Керування оточеннями

Перемикання між production та development через змінну GRAV_ENVIRONMENT:

---
# user/config/env/production/system.yaml
cache:
  enabled: true
  driver: redis
  redis:
    socket: '/var/run/redis/redis.sock'
debugger:
  enabled: false

# user/config/env/development/system.yaml
cache:
  enabled: false
debugger:
  enabled: true
shutdown:
  close_connection: true

Оточення задається змінною GRAV_ENVIRONMENT на початку запиту (production або development).

Керування плагінами та адміністратором

GPM — менеджер пакетів

bin/gpm index bin/gpm install form login admin sitemap feed bin/gpm update bin/gpm selfupgrade bin/gpm list 

Створення адміністратора

Адміністратор створюється командою bin/plugin login newuser --user=admin --password=... --admin=true — параметри задаються під ваші дані.

Скільки коштує встановлення Grav?

Базове встановлення — від 5 000 ₴, з оптимізацією Redis — від 15 000 ₴. Економія на хостингу до 30%. Середній чек нашої послуги з встановлення та налаштування Grav — 10 000 ₴. За нашими оцінками, використання Grav замість WordPress зменшує витрати на хостинг на 30-50%.

Що входить у нашу роботу

  • Повне встановлення та первинна конфігурація Grav на вашому сервері.
  • Налаштування Nginx/Apache, PHP-FPM, захист службових директорій.
  • Встановлення базових плагінів: Form, Login, Admin, Sitemap.
  • Конфігурація system.yaml та site.yaml під ваш проєкт.
  • Увімкнення кешування (Redis або файлове) та стиснення.
  • Створення адміністратора та видалення інсталятора.
  • Документування керування: доступи, GPM-команди, рекомендації з резервного копіювання.
  • Консультація з подальшої оптимізації та підтримки.

Покроковий запуск Grav: від нуля до робочого сайту

  1. Встановіть Grav через Composer: composer create-project getgrav/grav /var/www/mysite.
  2. Налаштуйте веб-сервер — скопіюйте конфіг Nginx з розділу вище або використовуйте .htaccess для Apache.
  3. Встановіть Admin-плагін: bin/gpm install admin login form sitemap.
  4. Створіть адміністратора командою bin/plugin login newuser з вашими обліковими даними.
  5. Налаштуйте user/config/system.yaml — увімкніть кеш, вкажіть тему, додайте потрібні мови.
  6. Переключіть оточення через змінну GRAV_ENVIRONMENT=production для бойового сервера.
  7. Перевірте права доступу на папки cache, logs, images — вони повинні бути 777.
  8. Закрийте службові директорії в конфігу веб-сервера згідно з прикладом Nginx вище.

Після цих кроків сайт готовий до наповнення контентом. Для складних проєктів з мультимовністю, кастомними темами та e-commerce звертайтесь до нас — налаштуємо Grav під ключ за 1–3 дні. Вартість базового встановлення — від 5 000 ₴, з оптимізацією Redis та налаштуванням оточень — від 15 000 ₴.

Ми — команда з 12+ річним досвідом у веб-розробці та 5 роками на ринку. Налаштували вже понад 250 проєктів на Grav. Даємо гарантію: якщо щось не працює — доопрацьовуємо безкоштовно. Зв'яжіться з нами, щоб отримати консультацію з налаштування та оптимізації під ваш проєкт. Замовте встановлення Grav — і ми перетворимо ваш сайт на швидкий, надійний flat-file проєкт.

Типові помилки при налаштуванні
  • Неправильні права на папки cache, logs, images — сайт не завантажується або не кешується.
  • Забули вимкнути debugger у production — зниження продуктивності та витік даних.
  • Не налаштували rewrite-правила для Nginx/Apache — 404 помилки при зверненні до сторінок.
  • Використовуєте файловий кеш на сервері з частими перезаписами — краще Redis.

Офіційна документація Grav: Grav Documentation

Наші компетенції:

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1542
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1369
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1142
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1060