Чтобы начать установку Drupal, выполните следующие действия:

Шаг 1. Установите HTTP-сервер Nginx

Для работы Drupal требуется веб-сервер, а Nginx — один из самых популярных веб-серверов с открытым исходным кодом, доступных сегодня.

Чтобы установить Nginx в Ubuntu, выполните следующие команды:

sudo apt update
sudo apt install nginx

После установки Nginx приведенные ниже команды можно использовать для остановки , запуска и включения службы Nginx, которая всегда запускается с загрузкой сервера.

sudo systemctl stop nginx.service
sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Чтобы проверить, установлен ли и работает ли Nginx, откройте свой веб-браузер и перейдите к IP-адресу или имени хоста сервера.

http://localhost

Если вы видите страницу в своем браузере, значит, Nginx работает должным образом.

Шаг 2: Установите сервер базы данных MariaDB

Вам также понадобится сервер базы данных для запуска Drupal. Сервер базы данных — это место, где хранится контент Drupal.

Настоящим сервером базы данных с открытым исходным кодом, который вы можете использовать с Drupal, является сервер базы данных MariaDB. Это быстрый, безопасный и используемый по умолчанию сервер почти для всех серверов Linux.

Чтобы установить MariaDB, выполните следующие команды:

sudo apt-get install mariadb-server mariadb-client

После установки MariaDB следующие команды можно использовать для остановки , запуска и включения службы MariaDB, чтобы она всегда запускалась при загрузке сервера

sudo systemctl stop mariadb.service
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Затем запустите приведенные ниже команды, чтобы защитить сервер базы данных паролем root, если вам не было предложено сделать это во время установки.

sudo mysql_secure_installation

При появлении запроса ответьте на приведенные ниже вопросы, следуя инструкциям.

  • Enter current password for root (enter for none): Just press the Enter
  • Set root password? [Y/n]: Y
  • New password: введите пароль
  • Re-enter new password: повторите пароль
  • Remove anonymous users? [Y/n]: Y
  • Disallow root login remotely? [Y/n]: Y
  • Remove test database and access to it? [Y/n]:  Y
  • Reload privilege tables now? [Y/n]:  Y

Чтобы проверить и убедиться, что MariaDB установлена ​​и работает, войдите в консоль базы данных, используя следующие команды:

sudo mysql -u root -p

при появлении запроса введите пароль root.

Если вы видите экран, похожий на показанный выше, значит сервер успешно установлен.

Шаг 3. Установите PHP и связанные модули

Drupal — это приложение на основе PHP, и для его запуска требуется PHP. Поскольку в некоторых версиях Ubuntu нет последней версии PHP, вы можете добавить сторонний репозиторий PPA для установки PHP оттуда.

Приведенная ниже команда добавит сторонний PPA в Ubuntu.

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php

Затем обновите и обновите до PHP 

sudo apt update

Затем выполните приведенные ниже команды, чтобы установить PHP 7.4 и связанные модули.

sudo apt install php-fpm php-common php-mysql php-gmp php-curl php-intl php-mbstring php-xmlrpc php-gd php-xml php-cli php-zip

После установки PHP (должен установить я свежий, у меня это 8.1) перейдите и настройте некоторые базовые параметры, которые могут потребоваться для правильной работы Drupal.

Выполните команды ниже, чтобы открыть PHP.

sudo nano /etc/php/8.1/fpm/php.ini

Ниже приведены хорошие настройки для большинства веб-сайтов Drupal.

file_uploads = On
allow_url_fopen = On
short_open_tag = On
memory_limit = 256M
cgi.fix_pathinfo = 0
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/Chicago

При этом должен быть установлен PHP 7.4 с некоторыми базовыми настройками, чтобы позволить Drupal функционировать.

Шаг 4: Создайте базу данных Drupal

Когда все серверы установлены выше, пора приступить к настройке среды Drupal. Сначала выполните следующие шаги, чтобы создать пустую базу данных для использования Drupal.

Войдите в консоль базы данных MariaDB, используя следующие команды:

sudo mysql -u root -p

Затем создайте базу данных с именем drupal.

CREATE DATABASE drupal;

Cоздайте пользователя базы данных с именем drupaluser и установите пароль

CREATE USER 'drupaluser'@'localhost' IDENTIFIED BY 'new_password_here';

Затем предоставьте пользователю полный доступ к базе данных.

GRANT ALL ON drupal.* TO 'drupaluser'@'localhost' WITH GRANT OPTION;

Наконец, сохраните изменения и выйдите.

FLUSH PRIVILEGES;
EXIT;

Шаг 5: Загрузите Drupal

На этом этапе Drupal готов к загрузке и установке. Используйте команды ниже, чтобы загрузить последнюю версию Drupal.

Чтобы получить последнюю версию Drupal, вы можете использовать репозиторий Github … Установите Composer, Curl и другие зависимости, чтобы начать.

sudo apt install curl git
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

После установки curl и Composer, указанных выше, перейдите в корневой каталог Nginx и загрузите пакеты Drupal с Github … Всегда заменяйте номер ветки на последнюю ветку.

Чтобы просмотреть выпуски Drupal, перейдите на страницу .

cd /var/www/
sudo git clone --branch 9.5.5 https://git.drupal.org/project/drupal.git
cd /var/www/drupal
sudo composer install

Затем запустите команду ниже, чтобы позволить www-dataпользователю владеть каталогом Drupal.

sudo chown -R www-data:www-data /var/www/drupal/
sudo chmod -R 755 /var/www/drupal/

Шаг 6. Настройте Nginx

Ниже вы настраиваете файл Nginx VirtualHost для создаваемого сайта Drupal. Этот файл определяет, как обрабатываются и обрабатываются клиентские запросы.

Выполните приведенные ниже команды, чтобы создать новый файл VirtualHost с именем drupalв каталоге /etc/nginx/sites-available/ .

sudo nano /etc/nginx/sites-available/drupal

Ниже приведены очень хорошие настройки конфигурации для большинства сайтов Drupal на сервере Nginx. Эта конфигурация должна отлично работать.

Скопируйте содержимое ниже и сохраните в файл, созданный выше.

server {
    listen 80;
    listen [::]:80;
    root /var/www/drupal;
    index  index.php index.html index.htm;
    server_name  example.com www.example.com;

    client_max_body_size 100M;
    autoindex off;

    location ~ \..*/.*\.php$ {
        return 403;
    }

    location ~ ^/sites/.*/private/ {
        return 403;
    }

    # Block access to scripts in site files directory
    location ~ ^/sites/[^/]+/files/.*\.php$ {
        deny all;
    }

    # Block access to "hidden" files and directories whose names begin with a
    # period. This includes directories used by version control systems such
    # as Subversion or Git to store control files.
    location ~ (^|/)\. {
        return 403;
    }

    location / {
        try_files $uri /index.php?$query_string;
    }

    location @rewrite {
        rewrite ^/(.*)$ /index.php?q=$1;
    }

    # Don't allow direct access to PHP files in the vendor directory.
    location ~ /vendor/.*\.php$ {
        deny all;
        return 404;
    }


    location ~ '\.php$|^/update.php' {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    # Fighting with Styles? This little gem is amazing.
    # location ~ ^/sites/.*/files/imagecache/ { # For Drupal <= 6
    location ~ ^/sites/.*/files/styles/ { # For Drupal >= 7
        try_files $uri @rewrite;
    }

    # Handle private files through Drupal. Private file's path can come
    # with a language prefix.
    location ~ ^(/[a-z\-]+)?/system/files/ { # For Drupal >= 7
        try_files $uri /index.php?$query_string;
    }
}

Сохраните файл и выйдите.

После сохранения файла, указанного выше, выполните следующие команды, чтобы включить новый сайт, а затем перезапустите сервер Nginx.

sudo ln -s /etc/nginx/sites-available/drupal /etc/nginx/sites-enabled/
sudo systemctl restart nginx.service

На этом этапе drupal готов и его можно запустить, перейдя на IP-адрес сервера или имя хоста.

http://localhost

 

Затем откройте браузер и перейдите к доменному имени сервера. Вы должны увидеть мастер установки Drupal для завершения. Пожалуйста, внимательно следуйте указаниям мастера.

https://example.com/

Затем следуйте инструкциям на экране… Выберите язык установки, затем нажмите «Сохранить и продолжить».

На следующем экране выберите вариант стандартной установки, чтобы включить предварительно настроенные часто используемые функции.

Это самый популярный вариант для большинства веб-сайтов, на которых работает Drupal CMS.

Затем введите информацию о подключении к базе данных и нажмите «Сохранить и продолжить».

После этого введите информацию о сайте, включая имя сайта, адрес электронной почты администратора сайта, имя пользователя и пароль, и продолжайте.

Когда вы закончите, Drupal должен быть установлен и готов к использованию. Войдите как администратор и начните настраивать свой сайт

В будущем, когда вы захотите выполнить обновление до новой выпущенной версии, просто выполните следующие команды, чтобы обновить.

sudo composer update /var/www/drupal/core --with-dependencies
cd /var/www/drupal
sudo composer require drush/drush
cd /var/www/drupal/vendor/drush/drush
./drush updatedb
./drush cr
sudo chown www-data:www-data /var/www/drupal
sudo chmod 755 /var/www/drupal

Поздравляю! Вы успешно установили Drupal CMS на Ubuntu 18.04 | 20.04. Если вы обнаружите какую-либо ошибку выше, пожалуйста, используйте форму комментария ниже, чтобы сообщить об этом.

Спасибо!

Теги