Поиск по сайту:

Как установить Drupal 8 с Apache, MySQL и SSL на Ubuntu 15.10


На этой странице

  1. Шаг 1. Установите Apache и PHP
  2. Шаг 2. Установка и настройка базы данных MySQL
  3. Шаг 3. Установите и настройте SSL
  4. Шаг 4. Настройка виртуального хоста Apache
  5. Шаг 5. Установите и настройте Drupal 8
  6. Заключение

Drupal — это система управления контентом с открытым исходным кодом, основанная на PHP и распространяемая под Стандартной общественной лицензией GNU. Drupal — это масштабируемая и открытая платформа для управления веб-контентом, ее сообщество предоставляет более 31 000 модулей для расширения основных функций, а Drupal используется не менее чем на 2,1% всех веб-сайтов в Интернете. В конце 2015 года проект Drupal выпустил новую основную версию Drupal 8, о которой я расскажу в этом руководстве.

В этом руководстве я покажу вам, как установить Drupal 8 на Ubuntu 15.10 с Apache в качестве веб-сервера, MySQL в качестве базы данных и как защитить веб-сайт с помощью SSL.

Предпосылки

  • Убунту 15.10 — 64-разрядная версия.
  • Привилегии root.

Шаг 1 — Установите Apache и PHP

Я установлю apache и PHP (и некоторые модули PHP, необходимые для Drupal) с помощью apt, установщика пакетов Ubuntu. Затем мы включим модули apache mod_rewrite и mod_ssl.

Обновите репозиторий Ubuntu и установите Apache:

sudo su
apt-get update
apt-get install apache2 -y

Затем установите PHP 5 и модули PHP с помощью следующей команды:

apt-get install -y php5 libapache2-mod-php5 php5-mysqlnd php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-apcu

Теперь включите Apache SSL и перепишите модули с помощью команды a2enmod. Перезапустите apache, чтобы применить изменения конфигурации:

a2enmod rewrite ssl
systemctl restart apache2

Проверяем, что модули загружены командой:

apache2ctl -M | egrep 'ssl|rewrite'

Вывод должен показать следующие строки:

#Enabled
 rewrite_module (shared)
 ssl_module (shared

Итак, mod-rewrite и mod-ssl загружены.

Теперь я проверю, что Apache и PHP работают нормально. Создайте новый файл в каталоге \/var/www/html/\. Файл содержит команду phpinfo():

cd /var/www/html
echo "<?php phpinfo(); ?>" > info.php

посетите IP-адрес сервера: 192.168.1.100/info.php

Результат должен быть похож на этот скриншот.

Удалите файл info.php:

rm -f /var/www/html/info.php

Поскольку общедоступный файл info.php представляет собой угрозу безопасности.

Шаг 2. Установите и настройте базу данных MySQL.

На этом этапе мы установим MySQL 5.6 и создадим новую базу данных для Drupal. Мы создадим базу данных с именем drupaldb, нового пользователя drupaluser с паролем [email и предоставим пользователю доступ к базе данных.

Установите MySQL с помощью следующей команды:

apt-get install mysql-server mysql-client -y

В процессе установки будет предложено ввести пароль MySQL, выберите безопасный пароль.

Теперь войдите в базу данных MySQL с помощью пользователя \root\ и пароля, который вы выбрали выше, затем создайте базу данных и пользователя для drupal.

Вы можете использовать команды ниже:

mysql -u root -p

create database drupaldb;
create user ';
flush privileges;
exit

Настройка базы данных завершена.

Шаг 3 — Установите и настройте SSL

Мы будем использовать SSL для обеспечения безопасного доступа к Drupal. Создайте новый каталог для ssl в каталоге конфигурации apache, затем создайте сертификат SSL с помощью команды OpenSSL и измените разрешение файла сертификата.

Перейдите в каталог apache, создайте каталог ssl и введите его:

cd /etc/apache2/
mkdir ssl
cd ssl/

Создайте самозаверяющий SSL-сертификат:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/drupalssl.key -out /etc/apache2/ssl/drupalssl.crt

Измените разрешение файла сертификата:

chmod 600 *

Создается новый файл сертификата SSL.

Шаг 4. Настройте виртуальный хост Apache.

На этом этапе мы создадим каталог для Drupal внутри каталога /var/www и добавим новый файл конфигурации виртуального хоста для Drupal.

mkdir -p /var/www/drupal
cd /etc/apache2/sites-available

Теперь создайте новый файл с именем drupal.conf с помощью vim, который будет содержать конфигурацию виртуального хоста Apache:

vim drupal.conf

Вставьте конфигурацию виртуального хоста ниже:

        <VirtualHost *:80>
                ServerName www.mydrupal.co
                DocumentRoot /var/www/drupal

                # Redirect http to https
                RedirectMatch 301 (.*) https://www.mydrupal.co$1
        </VirtualHost>

        <VirtualHost _default_:443>

                # Server Info
                ServerName www.mydrupal.co
                ServerAlias mydrupal.co
                ServerAdmin 

                # Web root
                DocumentRoot /var/www/drupal

                # Log configuration
                ErrorLog ${APACHE_LOG_DIR}/drupal-error.log
                CustomLog ${APACHE_LOG_DIR}/drupal-access.log combined

                #   Enable/Disable SSL for this virtual host.
                SSLEngine on

                # Self signed SSL Certificate file
                SSLCertificateFile      /etc/apache2/ssl/drupalssl.crt
                SSLCertificateKeyFile /etc/apache2/ssl/drupalssl.key

                <Directory "/var/www/drupal">
                        Options FollowSymLinks
                        AllowOverride All
                        Require all granted
                </Directory>

                <FilesMatch "\.(cgi|shtml|phtml|php)$">
                                SSLOptions +StdEnvVars
                </FilesMatch>
                <Directory /usr/lib/cgi-bin>
                                SSLOptions +StdEnvVars
                </Directory>

                BrowserMatch "MSIE [2-6]" \
                                nokeepalive ssl-unclean-shutdown \
                                downgrade-1.0 force-response-1.0
                # MSIE 7 and newer should be able to use keepalive
                BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown

        </VirtualHost>

Замените доменное имя www.mydrupal.co на доменное имя вашего веб-сайта Drupal.

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

Теперь проверьте конфигурацию Apache с помощью команды:

apachectl configtest

Если вы видите \Синтаксис в порядке\, значит конфигурация apache верна.

Теперь активируйте виртуальный хост Drupal и перезапустите Apache:

a2ensite drupal
systemctl restart apache2

Виртуальный хост создан и настроен.

Шаг 5 - Установите и настройте Drupal 8

Мы должны установить git и drush, прежде чем мы установим Drupal. Итак, давайте установим их с помощью следующей подходящей команды:

apt-get install git drush -y

Теперь перейдите в каталог Drupal и загрузите новую версию Drupal 8 с помощью команды drush.

cd /var/www/drupal
drush dl drupal-8

Переместите все файлы Drupal в \/var/www/drupal\:

mv drupal-8.0.1/* .
rm -rf drupal-8.0.1/

Перейдите в каталог sites/default и скопируйте два файла конфигурации settings.php и services.yml:

cd sites/default
cp default.settings.php settings.php
cp default.services.yml services.yml

Затем создайте новый каталог files и измените права доступа ко всем файлам и папкам в каталоге sites/default:

mkdir files/
chmod a+w *

Перейдите в каталог /var/www/ и измените владельца каталога drupal на пользователя и группу www-data:

cd /var/www/
chown -R www-data:www-data drupal/

Оболочка установки Drupal завершена, перейдите на домен drupal вашего веб-сайта \www.mydrupal.co\, и вы автоматически переключитесь на https-соединение.

Выберите свой язык, здесь я буду использовать английский.

Выберите Стандартный профиль установки.

Когда ваш сервер будет готов для Drupal (как и наш сервер, когда вы использовали описанные выше шаги установки), вы перейдете к разделу проверки требований и продолжите настройку базы данных. Заполните данные базы данных MySQL, которую мы создали ранее:

Нажмите «Сохранить и продолжить» и дождитесь завершения процесса установки.

ow Настройте сайт, учетную запись администратора, адрес электронной почты, имя сайта и т. д.

Друпал установлен и настроен.

Заключение

Drupal — это система управления контентом, основанная на PHP, она используется как минимум на 2,1% всех веб-сайтов в Интернете. До сих пор Drupal выпускал версию 8 и предоставляет множество дополнительных модулей, которые делают Drupal действительно полезным. Мы можем установить Drupal на любой сервер, который поддерживает MySQL или MariaDB в качестве базы данных, веб-сервер, такой как Apache или Nginx, и язык программирования PHP. Drupal легко установить и настроить.