Drupal входит в число самых популярных движков для сайтов во всём мире. Его главные фишки:
- богатый набор возможностей по внутренней кастомизации;
- огромное число модулей и расширений для самых разных задач;
- тщательный подход к безопасности;
- встроенная система кэширования;
- хорошая SEO-оптимизация из коробки;
- большое отзывчивое сообщество.
При этом из-за обилия функций освоить Drupal может быть немного сложнее, чем другие популярные движки. Кроме того, он требует больше ресурсов, поэтому для него нужен сервер помощнее. Но это с лихвой компенсируется возможностью развернуть на нём проект любой сложности.
Последняя версия Drupal предусматривает наличие на сервере PHP версии 7.4, сервера баз данных MySQL 5.7.8 или MariaDB 10.3 и выше. «Из коробки» такой набор доступен в операционной системе Ubuntu 20.04.
Установка Drupal происходит в несколько шагов:
- Подготовка сервера
- Скачивание и распаковка архива Drupal
- Настройка конфигурационных файлов
- Запуск скрипта установки в браузере
Первый этап, подготовка, заключается в активации сервера и установке программного обеспечения, включая создание пустой базы данных, директории сайта и настройку веб-сервера. И есть два варианта, как всё это организовать:
- Чтобы управлять сервером и сайтами через удобный интерфейс в браузере, установите панель управления ispmanager. Она имеет более широкие возможности в плане работы с сервером и может вместить неограниченное количество проектов;
- Если вы хотите управлять сервером вручную, то для работы сайта понадобится как минимум LAMP. Можно заказать сервер с его автоматической установкой из рецепта или установить весь набор программного обеспечения вручную.
Процесс прохождения остальных этапов зависит от этого выбора и может немного видоизменяться. Пройдёмся по каждому способу:
Установка Drupal в ispmanager
Панель управления ispmanager обладает широким набором функций, автоматизирующих и упрощающих задачи по обслуживанию сайтов.
Установить Drupal, как и многие другие популярные CMS, в ispmanager можно автоматически, за несколько кликов. Причём сразу тремя способами — и это если говорить только про автоустановку.
Установка CMS для сайта в ispmanager
Установка Drupal вручную
Предположим, что вы уже подготовили сервер — установили LAMP, вручную или из рецепта, выполнили первичные настройки — создали базу данных и директорию сайта, настроили веб-сервер.
Всё, что осталось — включить модуль mod_rewrite
, загрузить и распаковать в папку сайта архив с Drupal и немного поколдовать с его конфигурационными файлами.
Итак, вводные: подключаемся к серверу по SSH. Первым делом нам нужно донастроить наш веб-сервер и конфигурационный файл сайта. Для этого:
-
Нужно включить модуль
mod_rewrite
для работы «чистых ссылок». На CentOS он активирован по умолчанию, а на Ubuntu или Debian это можно сделать за один шаг:a2enmod rewrite
-
Теперь нам нужно настроить некоторые правила в конфигурационном файле нашего сайта:
vim /etc/apache2/sites-available/example.com.conf
В качестве примера приведён консольный редакторvim
. Для входа в режим редактирования на клавиатуре нажмите I. Для выхода из режима редактирования нажмите Esc. Для сохранения и выхода из файла введите сочетание :wq Для выхода без сохранения введите :q!Перед закрывающим тегом
</VirtualHost>
(последняя строчка файла) добавляем такой блок настроек:<Directory /var/www/example.com> Options Indexes FollowSymLinks MultiViews AllowOverride All </Directory>
-
После всех манипуляций перезапускаем веб-сервер:
systemctl reload apache2
Теперь нам нужно скачать и настроить сам Drupal.
-
Переходим в корневую папку нашего сайта на сервере (в примере это
example.com
):cd /var/www/example.com
-
Скачиваем архив с последней версией Drupal:
wget https://www.drupal.org/download-latest/tar.gz
-
Запускаем распаковку:
tar -xzf tar.gz
Проверим список файлов в корневой папке сайта с помощью команды:
ls -al
В итоге у нас получится, что рабочие файлы CMS лежат не в корне сайта, где должны, а в подкаталоге
drupal-9.0.3
, который был распакован из архива (его название включает номер версии и у вас может отличаться). Нужно это исправить: переместить все файлы из папкиdrupal-9.0.3
в корневую директорию сайта.mv -f ./drupal-9.0.3/* ./drupal-9.0.3/.* ./
После этого нужно удалить архив и ненужную папку, чтобы не занимали место:
rmdir drupal-9.0.3 rm tar.gz
-
Для корректной установки нам потребуется создать папку под языковые пакеты:
mkdir -p ./sites/default/files/translations
И создать конфигурационный файл Drupal путём копирования образца
default.settings.php
:cp ./sites/default/default.settings.php ./sites/default/settings.php
Чтобы веб-сервер мог обрабатывать файлы нашего сайта, нужно настроить для него доступ к ним. Для этого укажем его владельцем всех файлов в каталоге нашего сайта. Важно помнить, что имя системного пользователя веб-сервера может отличаться в зависимости от вашей операционной системы: для Ubuntu и Debian это www-data
, для CentOS — apache
.
chown -R www-data:www-data /var/www/example.com
Дальше начинается самое интересное — настройка. В принципе, уже сейчас можно открыть в браузере домен вашего сайта или IP-адрес сервера — откроется установщик Drupal. Он предложит выбрать язык и укажет, какие настройки нужно выполнить, чтобы процесс завершился успешно:
После выбора языка установки вы увидите предложение выбрать установочный профиль. От него зависит, какой набор модулей будет установлен:
Далее скрипт проверит ваш сервер на соответствие системным требованиям движка. Если всё хорошо, вы автоматически минуете этот шаг. Если скрипту что-то не понравится, он выкатит список требований, которые нужно исправить.
В крайнем случае можно оставить их решение на потом и нажать «продолжить в любом случае» внизу страницы, чтобы перейти далее.
На следующем шаге установщик запросит данные базы данных. Если вы пропустили шаг создания базы при подготовке сервера, можно вернуться и наверстать этот момент.
После этого запустится загрузка и установка компонентов движка:
На последнем шаге вам останется заполнить информацию о сайте, указать логин, пароль и почту для администратора:
После чего запустится финальная настройка — обновление переводов конфигураций, и откроется админка Drupal:
На этом процесс ручной установки Drupal завершён.