phpMyAdmin с Nginx на Debian 10

phpMyAdmin — это бесплатный веб-инструмент с открытым исходным кодом для управления серверами MySQL и MariaDB . Он широко используется для управления базой данных компаниями веб-хостинга и администраторами, которые являются новыми для базы данных.

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

В этом посте мы увидим, как установить phpMyAdmin с Nginx на Debian 10 .

Будем настраивать phpMyAdmin на виртуальных машинах на proxmox на оной из виртуальных машин у нас находится mariadb на другой nginx и php7.3-fpm и сайт koktebel.club.

Mariadb подключена через TCP/IP

phpMyAdmin будем ставить где nginx и php7.3-fpm и сайт koktebel.club.

Установите PHP-расширения для phpMyAdmin для связи с базой данных.

sudo apt install -y php-json php-mbstring

Если sudo не поддерживает ,то можете обойтись без sudo , вот команда для установки

apt-get install sudo

Установка phpMyAdmin

PhpMyAdmin недоступен в качестве пакета Deb в репозитории ОС Debian для Debian 10. Итак, мы загрузим tar-архив с официального сайта .

wget https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.tar.gz

Извлеките phpMyAdmin с помощью tarкоманды.

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

cd /var/www/phpmyadmin

и командой извлечь

tar -zxvf phpMyAdmin-4.9.0.1-all-languages.tar.gz

или так

sudo mv phpMyAdmin-4.9.0.1-all-languages /var/www/phpmyadmin

Настройте phpMyAdmin

Скопируйте пример файла конфигурации.

sudo cp -pr /var/www/phpmyadmin/config.sample.inc.php /var/www/phpmyadmin/config.inc.php

Отредактируйте файл конфигурации.

Я буду использовать mcedit в базовой конфигурации его нет, чтобы установить выполните команду

apt-get install mc
sudo mcedit /usr/share/phpMyAdmin/config.inc.php

Создайте секрет blowfish и обновите секрет в файле конфигурации.

$cfg['blowfish_secret'] = 'CfX1la/aG83gx1{7rADus,iqz8RzeV8x'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Также раскомментируйте настройки хранилища phpMyAdmin.

/**
 * phpMyAdmin configuration storage settings.
 */

/* User used to manipulate with storage */
$cfg['Servers'][$i]['controlhost'] = 'localhost';
// $cfg['Servers'][$i]['controlport'] = '';
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'pmapass';

/* Storage database and tables */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';

Импортируйте create_tables.sql, чтобы создать таблицы для phpMyAdmin.

sudo mysql </usr/share/phpMyAdmin/sql/create_tables.sql -u root -p

Войдите в MariaDB.

sudo mysql -u root -p

Добавьте пользователя и предоставьте разрешение в базу данных phpMyAdmin.

GRANT ALL PRIVILEGES ON phpmyadmin.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass';

Создайте файл конфигурации виртуального хоста для phpMyAdmin (например, phpMyAdmin.conf ) в каталоге /etc/nginx/conf.d .

Или пойти можно боле простым путем сделайте ссылку с папки phpMyAdmin на папку где лежит ваш сайт. Работать будет но не безопасно.

Ссылка выглядеть будет так

ln -s /var/www/phpmyadmin /var/www/ваш-сайт/phpmyadmin

Файл конфигурации nginx

sudo nano /etc/nginx/conf.d/phpMyAdmin.conf

Используйте следующую информацию для создания виртуального хоста для phpMyAdmin. Измените доменное имя (имя_сервера) согласно вашему требованию

server {
   listen 80; # Порт обращение к сайту phpMyAdmin
   server_name pma.itzgeek.local; #Название сайта как вы будите обращятся 
   root /var/www/phpmyadmin; # Где лежат Файлы вашего phpMyAdmin

   location / {
      index index.php;
   }

## Images and static content is treated different
   location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
      access_log off;
      expires 30d;
   }

   location ~ /\.ht {
      deny all;
   }

   location ~ /(libraries|setup/frames|setup/libs) {
      deny all;
      return 404;
   }

      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME /var/www/phpmyadmin$fastcgi_script_name;
   }
}

Создайте каталог tmp для phpMyAdmin, а затем измените разрешение.

sudo mkdir /var/www/phpmyadmin/tmp

Установите владельца каталога phpMyAdmin.

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

Перезапустите сервисы.

sudo systemctl restart nginx && systemctl restart php7.3-fpm

Создать БД и пользователя

По умолчанию root-пользователю MariaDB Разрешить доступ с любого хоста ко всем базам на сервере. Итак, теперь мы создадим пользователя базы данных и войдем в phpMyAdmin с этим пользователем.

База данных: app_db
Пользователь: app_user

mysql -u root -p

CREATE DATABASE app_db;

GRANT ALL PRIVILEGES ON app_db.* TO 'app_user'@'%' IDENTIFIED BY 'password';

FLUSH PRIVILEGES;

EXIT;

Доступ к phpMyAdmin

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

Если вы сделали символической ссылкой то будет доступен вот так

https://ваш_сайт/phpmyadmin/

Установите phpMyAdmin с Nginx на Debian 10 — phpMyAdmin

Вы получите домашнюю страницу, где вы можете управлять базами данных.

Установите phpMyAdmin с Nginx на Debian 10 — phpMyAdmin
0

Автор публикации

не в сети 3 дня

conter

0
Комментарии: 4Публикации: 54Регистрация: 19-10-2019

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт защищен reCAPTCHA и применяются Политика конфиденциальности и Условия обслуживания применять.

Авторизация
*
*
Этот сайт защищен reCAPTCHA и применяются Политика конфиденциальности и Условия обслуживания применять.

Докажи, что человек


Генерация пароля
Этот сайт защищен reCAPTCHA и применяются Политика конфиденциальности и Условия обслуживания применять.