4.1.9 Установка и настройка Drupal

The Host Drupal Banner

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

Не ограничивайтесь загрузкой архива — есть несколько современных методов:

  1. Через Composer (рекомендуемый способ)
  2. Ручная установка (скачать архив и развернуть)
  3. С помощью дистрибутивов / профилей установки
  4. Быстрая команда (local / demo)

Официально Drupal предлагает «4 способа установки» и рекомендует Composer-подход как основной.

Установка через Composer (рекомендуемый способ)

composer create-project drupal/recommended-project my_site_name_dir

Этот подход создаёт структуру проекта, устанавливает ядро и зависимости. Если у вас уже есть кодовая база с composer.json, используйте:

composer install --no-dev -o

где --no-dev исключает dev-зависимости для продакшена, -o оптимизирует автозагрузку.

Ручная установка (архив + распаковка)

  1. Скачайте архив с официального сайта Drupal.
  2. Разархивируйте его в каталог, например: www/DOMAIN_NAME.
  3. Создайте базу данных.
  4. Перейдите в браузере по http://DOMAIN_NAME — должен запуститься установщик.

  1. Укажите язык, параметры базы, данные администратора.

  1. После установки удалите скрипт установки (обычно core/install.php) или убедитесь, что он недоступен.

Настройка дополнительных функций

Настройка конфигурации

Конфигурационный файл Drupal находится по адресу: ~/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 или внутренний механизм обновлений

Проверка работы

  1. Перейдите в http(s)://DOMAIN_NAME/user/login, зайдите в админку
  2. В разделе Reports → Status report проверьте состояние системы
  3. Откройте главную страницу — убедитесь, что выводится корректно
  4. Создайте страницу (Content → Add content → Page) и проверьте отображение
  5. Проверьте, что SSL работает и HTTP перенаправляет на HTTPS

Примечание: При использовании панели (ISPmanager, aaPanel, cPanel) настройте домен и БД через интерфейс панели — Docker или CLI не требуется.

Распространённые ошибки

Ошибка / Симптом Причина Решение Диагностика
Белый экран Ошибка PHP или модуль отсутствует Включите отчёт об ошибках в settings.php tail -f /var/log/nginx/error.log
Ошибка соединения с БД Неверные параметры DB_USER или DB_PASSWORD Проверьте файл sites/default/settings.php mysql –u user –p
Отказ в доступе к директории files Неверные права доступа Установите chown www-data:www-data sites/default/files ls –l sites/default/files
403 Forbidden при установке модулей Недостаточно прав на каталог modules Проверьте владельца и права 755 для директорий find . –type d –perm 755