4.1.9 Встановлення Drupal CMS

Drupal — це вільна система керування контентом (CMS, Content Management System) з відкритим вихідним кодом, створена для складних і гнучких веб-проєктів: корпоративних порталів, державних сайтів, новинних порталів та онлайн-спільнот.
Вона написана на PHP, використовує MySQL, PostgreSQL або SQLite, і працює на будь-якому веб-сервері з підтримкою PHP — Apache, Nginx або LiteSpeed.
Drupal відрізняється модульною архітектурою та масштабованістю:
- ядро можна розширювати тисячами модулів з офіційного репозиторію;
- підтримує складні структури даних і ролей користувачів;
- має систему шаблонів Twig;
- дозволяє створювати інтерфейси REST та JSON:API;
- оптимізований під SEO, кешування та безпеку.
По суті, Drupal — це конструктор рівня фреймворку, що підходить не лише для контентних сайтів, а й для високонавантажених платформ із користувацькою логікою.
Важливо! Регулярно оновлюйте CMS Drupal і встановлені модулі. Це важливо для захисту від уразливостей і сумісності з новими версіями PHP та MySQL. Перед оновленням завжди робіть резервну копію сайту та бази даних.
Підготовка сервера
Вимоги
- Активна послуга Хостингу, Віртуального або Виділеного сервера
- ОС — Ubuntu 22.04 LTS або 24.04 LTS
- Щонайменше 2 ядра CPU, 4 ГБ RAM, 20 ГБ SSD
- PHP ≥ 8.1 з розширеннями pdo_mysql, mbstring, xml, gd, curl, opcache
- MySQL 5.7+/MariaDB 10.3+ або PostgreSQL 13+
- Root доступ або користувач із правами sudo
Змінні середовища
- DOMAIN_NAME— доменне ім’я сайту
- DB_NAME,- DB_USER,- DB_PASSWORD— параметри бази даних
- DRUPAL_ROOT— каталог встановлення Drupal
Встановлення Drupal на хостинг
- Завантажте архів із офіційного сайту Drupal.
- Завантажте архів у папку вашого домену (~/www/DOMAIN_NAME) через FTP або менеджер файлів панелі хостингу.
- Створіть базу даних.
- Перейдіть у браузері за адресою вашого домену:
http://DOMAIN_NAME— має запуститися встановлювач.

- Укажіть мову, параметри бази, дані адміністратора.


- Після встановлення видаліть скрипт встановлення (зазвичай core/install.php) або переконайтеся, що він недоступний.
Налаштування додаткових функцій Drupal
Налаштування конфігурації
Конфігураційний файл Drupal розташований за адресою:
- хостинг: ~/www/DOMAIN_NAME/sites/default/settings.php
- VPS: /var/www/DOMAIN_NAME/sites/default/settings.php
Докладніше можете дізнатися в нашій інструкції.
Підключення SSL-сертифіката
Для роботи за захищеним протоколом HTTPS використовуйте Let’s Encrypt або комерційний SSL-сертифікат
Оптимізація продуктивності
- Увімкніть кешування (Drupal → «Configuration → Performance»)
- Встановіть і активуйте модуль Redis або Memcache для зовнішнього кеша
- Увімкніть OPCache на рівні PHP
- Агрегація CSS/JS — об’єднання та мінімізація
Безпека
- Встановіть модуль Security Review — перевірить конфігурацію
- Обмежте доступ до settings.php,services.yml,composer.jsonта інших критичних файлів
- Налаштуйте Trusted Host Patterns (захист від HTTP Host Header атак)
- Періодично оновлюйте ядро та модулі через Composer або внутрішній механізм оновлень
Перевірка роботи
- Перейдіть у http(s)://DOMAIN_NAME/user/login, увійдіть в адмінку
- У розділі Reports → Status report перевірте стан системи
- Відкрийте головну сторінку — переконайтеся, що вона відображається коректно
- Створіть сторінку (Content → Add content → Page) і перевірте відображення
- Переконайтеся, що SSL працює і HTTP перенаправляє на HTTPS
Поширені помилки
| Помилка / симптом | Причина | Рішення | 
|---|---|---|
| Білий екран (500) | Фатальна помилка PHP або відсутнє потрібне розширення | Увімкніть відображення помилок і перевірте логи; виправте причину за повідомленням про помилку | 
| Не вдалося підключитися до БД | Невірні DB_HOST/DB_USER/DB_PASSWORDабо немає прав у користувача чи БД/користувач не створені | Перевірте хост/ім’я БД/логін/пароль у ~/www/DOMAIN_NAME/sites/default/settings.php; створіть користувача з доступом до потрібної БД | 
| Немає прав на sites/default/files | Недостатні права/володіння каталогом файлів | Встановіть власника веб-процесу і коректні права: chown -R www-data:www-data sites/default/files· каталоги 755, файли 644 (або груповий запис за потрібної схеми) | 
| Помилки під час оновлення модулів | Оновлення через UI не підтягує залежності; застарілий спосіб | Оновлюйте через Composer: composer update drupal/<module> --with-dependenciesабо всі пакети; даліdrush updatedbіdrush cache:rebuild | 
Корисні посилання
Офіційна документація


