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 | 
Полезные ссылки
Официальная документация


