Как установить Drupal с Nginx MySQL PHP phpMyAdmin на Ubuntu 18.04 LTS

12 set 2022 5 min di lettura
Как установить Drupal с Nginx MySQL PHP phpMyAdmin на Ubuntu 18.04 LTS
Indice dei contenuti

Введение

Если вы намерены установить Drupal на удаленный сервер, продолжайте чтение, в противном случае, если вы хотите установить Drupal на локальный компьютер, пропустите первый абзац «Подключение к серверу» и прочитайте следующий.

Подключение к серверу

Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется пароль для аутентификации.

Чтобы подключиться к серверу как root, введите эту команду:

ssh root@IP_DEL_SERVER

Далее вам будет предложено ввести пароль пользователя root.

Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить первый параметр:

ssh VOSTRO_UTENTE@IP_DEL_SERVER

Затем вам будет предложено ввести пароль пользователя.

Теперь вы подключены к своему серверу и готовы начать установку Drupal на Ubuntu 18.04 LTS.

Установка Nginx

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

sudo apt update
sudo apt install nginx

Если брандмауэр Ubuntu активен, вам необходимо включить трафик для Nginx:

sudo ufw allow 'Nginx HTTP'

На данный момент сервер готов с конфигурациями по умолчанию. Просто подключитесь к вашему общедоступному IP-адресу или локальному хосту:


http://indirizzo_ip

 http://localhost

Чтобы перезапустить Nginx:

sudo service nginx restart

Чтобы остановить Nginx:

sudo service nginx stop

Чтобы запустить Nginx:

sudo service nginx start

Установить MySQL

Вы можете установить MySQL, используя официальный репозиторий Ubuntu с помощью apt. Установите MySQL:

sudo apt install mysql-server

Установить PHP

Чтобы установить PHP из терминала:

sudo apt install php-fpm php-mysql php-mbstring php-gettext php-zip php-curl php-intl php-gd
sudo phpenmod mbstring

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

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

Найдите эту строку ;cgi.fix_pathinfo, уберите точку с запятой ";" и вставьте нулевой параметр "0". Следовательно:


cgi.fix_pathinfo=0

Перезапустите PHP:

sudo systemctl restart php7.2-fpm

Настроить Nginx

Откройте следующий файл с FTP или терминала:

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

Мы можем удалить все содержимое файла, удерживая нажатой клавишу Ctrl + K, а затем вставить следующую конфигурацию:


server {
 listen 80 default_server;
 root /var/www/html;
 index index.php index.html index.htm;
 server_name localhost;
 charset UTF-8;
 location /{
 try_files $uri//index.php?$args;
 }
 location ~ \.php$ {
 try_files $uri =404;
 fastcgi_split_path_info ^(.+\.php)(/.+)$;
 fastcgi_pass unix:/run/php/php7.2-fpm.sock;
 fastcgi_index index.php;
 include fastcgi.conf;
 }
 location ~* \.(js|css|png|svg|jpg|jpeg|gif|ico|eot|otf|ttf|woff)$ {
 add_header Access-Control-Allow-Origin *;
 access_log off; log_not_found off; expires 30d;
 }
 location = /robots.txt { access_log off; log_not_found off; }
 location ~ /\. { deny all; access_log off; log_not_found off; }
 }

Закройте и сохраните файл.

Перезапустим Nginx

sudo service nginx restart

Установить PhpMyAdmin Чтобы установить phpMyAdmin, введите эти простые команды из терминала:

sudo apt update
sudo apt install phpmyadmin

ВНИМАНИЕ На этапе установки phpMyAdmin вам будет предложено выбрать Apache2 или Lighttpd, установив Nginx, нам не нужно ничего выбирать, нажмите « ОК », чтобы продолжить.

На этом этапе для правильной настройки phpMyadmin требуется база данных dbconfig-common, затем выберите « ОК ».

Введите пароль администратора базы данных.

Подтвердите пароль

Создайте символическую ссылку phpMyAdmin для Nginx

sudo ln -s /usr/share/phpmyadmin//var/www/html/

Перезапустите Nginx:

sudo service nginx restart

Теперь можно войти в phpmyadmin с пользователем phpmyadmin и паролем, установленным на этапе установки.

Вместо этого PhpMyAdmin не сможет использовать учетные данные root.

Вы можете столкнуться со следующими ошибками:


#1698 - Access denied for user 'root'@'localhost'
 mysqli_real_connect(): (HY000/1698): Access denied for user 'root'@'localhost'

Самое простое (и самое безопасное) решение — создать нового пользователя и предоставить ему необходимые права.

Изменить метод аутентификации

Начиная с версии MySQL 5.7, корневой пользователь MySQL по умолчанию настроен на аутентификацию через плагин auth_socket вместо пароля.

Чтобы использовать пароль для подключения к MySQL в качестве пользователя root, вам необходимо изменить метод аутентификации с auth_socket на mysql_native_password.

Поскольку пароль еще не установлен, вы можете подключиться к серверу MySQL, просто используя команду mysql или sudo mysql, если вы вошли в систему как обычный пользователь. Затем вам нужно будет использовать команду mysql -u root -p от имени пользователя root, в противном случае sudo mysql -u root -p от имени обычного пользователя.

Итак, если вы вошли в систему как root, введите в терминале:

mysql

В противном случае, если вы вошли в систему как обычный пользователь с привилегиями sudo:

sudo mysql

Чтобы проверить метод аутентификации, связанный с учетными записями mysql:

SELECT user,authentication_string,plugin,host FROM mysql.user;

Вы должны получить сообщение, подобное этому:


+------------------+-------------------------------------------+-----------------------+-----------+
 | user | authentication_string | plugin | host |
 +------------------+-------------------------------------------+-----------------------+-----------+
 | root | | auth_socket | localhost |
 | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
 | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
 | debian-sys-maint | *5852386AB32C5DAD5DDA4F5FED911A70DA342656 | mysql_native_password | localhost |
 +------------------+-------------------------------------------+-----------------------+-----------+
 4 rows in set (0.00 sec)

Как видите, метод аутентификации auth_socket установлен по умолчанию для пользователя root.

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

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'TUA_PASSWORD';

В последних версиях MySQL пароль должен соответствовать требованиям политики. Если установленный вами пароль не соответствует требованиям, вы можете получить выходное сообщение, подобное следующему:

Your password does not satisfy the current policy requirements.

Если вы предпочитаете отключить плагин проверки пароля, выполните следующую команду:

SET GLOBAL validate_password_policy=LOW;

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

Обновите таблицы:

FLUSH PRIVILEGES;

Теперь вы можете проверить новый метод аутентификации, связанный с пользователем root:

SELECT user,authentication_string,plugin,host FROM mysql.user;

Вы должны получить сообщение, подобное этому:


+------------------+-------------------------------------------+-----------------------+-----------+
 | user | authentication_string | plugin | host |
 +------------------+-------------------------------------------+-----------------------+-----------+
 | root | *E6A3377941E640ADEDCC8907E390B06B0C863862 | mysql_native_password | localhost |
 | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
 | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
 | debian-sys-maint | *5852386AB32C5DAD5DDA4F5FED911A70DA342656 | mysql_native_password | localhost |
 +------------------+-------------------------------------------+-----------------------+-----------+
 4 rows in set (0.00 sec)

Выйдите из приглашения MySQL:

exit;

Чтобы снова войти на сервер MySQL теперь вам нужно будет ввести пароль, затем из терминала:

Если вы вошли в систему как root, введите в терминале:

mysql -u root -p

В противном случае, если вы вошли в систему как обычный пользователь с привилегиями sudo:

sudo mysql -u root -p

Таким образом, вы сможете получить доступ к PhpMyAdmin или другому подобному программному обеспечению с пользователем root.

Вариант 2. Добавьте привилегии root для пользователя phpmyadmin. Выполните следующие команды:

GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;

Теперь вы можете войти в систему с пользователем phpmyadmin и получить все привилегии пользователя root.

Вариант 3. Создайте нового пользователя Теперь вы можете подключиться к базе данных через PhpMyadmin, используя имя пользователя «phpmyadmin» и пароль, введенный на предыдущих шагах.

Как вариант, вы можете создать нового пользователя и назначить ему необходимые привилегии:

CREATE USER 'nuovo_utente'@'localhost' IDENTIFIED BY 'nuova_password';
Осторожность:Your password does not satisfy the current policy requirements.этот учебник

Свяжите права управления с вновь созданным пользователем:

GRANT ALL PRIVILEGES ON *.* TO 'nuovo_utente'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;

Теперь вы можете подключиться к вашему общедоступному IP-адресу или к локальному хосту, добавив /phpmyadmin в конец адреса.


http://vostro_dominio/phpmyadmin

 http://localhost/phpmyadmin

Установить Друпал

Выполните следующие команды терминала, войдите в папку /var/www/html/:

cd /var/www/html/

Загрузите Drupal, на данный момент последняя версия 8.6.13:

sudo wget https://ftp.drupal.org/files/projects/drupal-8.6.13.zip

Установите Zip и Unzip для управления архивами .zip:

sudo apt-get install zip unzip

Извлечь Друпал:

sudo unzip drupal-8.6.13.zip

Войдите в новую папку:

cd drupal-8.6.13

Переместите все файлы в корневую папку:

sudo mv * /var/www/html

Поднимитесь на один уровень вверх:

cd..

Удалите папку, созданную для извлечения файлов, теперь пустую:

sudo rm -rf drupal-8.6.13

Изменить разрешения:

sudo chown -R www-data:www-data /var/www/

На этом этапе нам нужно создать базу данных для Drupal. Чтобы войти в phpMyAdmin, введите в браузере:


http://indirizzo_ip/phpmyadmin

Если установка производилась локально на ваш компьютер, напишите:


http://localhost/phpmyadmin

В левой колонке нажмите «Создать», введите имя базы данных и затем «Создать».

Подключиться к вашему доменному имени:


http://esempio.com

Если установка производилась локально на ваш компьютер, напишите:


http://localhost/

Теперь вы можете начать установку Drupal, введя необходимые данные, такие как адрес базы данных, обычно имя пользователя и пароль базы данных «localhost», имя сайта, имя пользователя и пароль, которые вы будете использовать для администратора Drupal.

Вывод

Подготовка к установке Drupal на Ubuntu 18.04 LTS завершена.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.