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


