Программирование HTML Как установить phpmyadmin на WEB-сервер Fri, March 29 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Как установить phpmyadmin на WEB-сервер Печать
Добавил(а) microsin   

phpmyadmin - удобная утилита для управления MySQL базами данных через WEB-интерфейс. Очень полезна, когда провайдер не предоставляет командную строку (например, нет доступа к шелл через SSH) для управления базами данных. В статье описан процесс установки по шагам. Оригинал инструкций по установке phpMyAdmin можно прочитать на английском языке по ссылке [2].

[Установка phpmyadmin]

1. Качаем последнюю версию phpmyadmin, см. ссылки [1]. Распаковываем архив, который мы скачали, куда-нибудь на локальном компьютере (не на web-сервер). В архиве имеется папка phpMyAdmin-3.4.4-all-languages (3.4.4 это текущая версия phpMyAdmin), и в этой папке есть другие папки contrib, js, libraries и другие, а также php-файлы config.sample.inc.php, index.php и прочие. Эти файлы и папки как раз и составляют систему phpMyAdmin.

2. Подключаемся по FTP к хостингу файлов нашего веб-сервера (FTP-доступ обычно предоставляется провайдером всегда). Создаем в корневой папке web-сервера (часто это папка www) папку tools, а в ней папку с уникальным именем, например D9B96C56. Это дополнительная предосторожность - папка с уникальным именем нужна для того, чтобы нельзя было подключиться к phpmyadmin, не зная имени папки.

3. В папку www/tools помещаем пустой файл-заглушку index.html с таким содержимым:

< html >< body bgcolor="#FFFFFF" >< /body >< /html >

Этот пустой файл-заглушка нужен для того, чтобы нельзя было получить список папок внутри папки www/tools.

4. Копируем содержимое папки phpMyAdmin-3.4.4-all-languages из архива (который мы распаковали на шаге 1) в папку www/tools/D9B96C56 - после этого в папке www/tools/D9B96C56 должны оказаться корневые php-файлы phpMyAdmin (config.sample.inc.php, index.php и прочие) и дополнительные папки phpMyAdmin (contrib, js, libraries и другие). Теперь папка www/tools/D9B96C56 у нас корневая директория phpMyAdmin.

5. Сконфигурируем phpMyAdmin. В корневой папке phpMyAdmin есть файл config.sample.inc.php - это и есть шаблон для конфига. Сделаем в корневой папке его копию под именем config.inc.php. Теперь нужно этот файл отредактировать. Добавляем 3 строки после строки "$i++":

 /*
 * First server
 */
$i++;
$cfg['Servers'][$i]['user'] = 'root'; //тут логин пользователя MySQL, в нашем примере root
$cfg['Servers'][$i]['password'] = ''; // тут должен быть пароль пользователя. В нашем примере он пустой.
$cfg['Servers'][$i]['auth_type'] = 'config';

Если Вы используете пустой пароль, как в нашем примере (внимание! Этого делать не рекомендуется, потому что не безопасно - лучше сделать секретный пароль), то нужно еще отредактировать строку с параметром AllowNoPassword (поменять false на true):

 //$cfg['Servers'][$i]['AllowNoPassword'] = false; 
$cfg['Servers'][$i]['AllowNoPassword'] = true;

6. Конфигурирование phpMyAdmin закончено, теперь можно получить доступ к консоли управления базами данных MySQL по ссылке http://имя_домена_сайта.ru/tools/D9B96C56/.

Есть альтернативный способ создания конфигурации phpMyAdmin. Для этого нужно в корневой папке phpMyAdmin создать папку config (для нашего примера получится полный путь до папки www/tools/D9B96C56/config), и запустить в браузере ссылку http://имя_домена_сайта.ru/tools/D9B96C56/setup/. Откроется WEB-интерфейс для конфигурирования phpMyAdmin. Нажмите кнопку "Новый сервер", поставьте галку "Основные настройки -> Соединять без пароля", "Параметры сервера -> Разрешить вход под root", "Параметры сервера -> Разрешать подключения без пароля" (если Вам это нужно, а если нет - то пропишите логин и пароль пользователя). После этого нажмите кнопку "Сохранить". Появится на главной странице WEB-интерфейса запись нового сервера, и нужно нажать еще раз кнопку "Сохранить". После этого в папке www\tools\D9B96C56\config\ появится новая конфигурация в виде файла config.inc.php. Этот файл нужно переместить в корневую папку phpMyAdmin (в нашем примере www\tools\D9B96C56), и папку config нужно удалить.

[Устранение ошибки The configuration file now needs a secret passphrase (blowfish_secret)]

Иногда не получается получить доступ к консоли управления phpMyAdmin из-за ошибки такого вида:

Ошибка: При cookie-аутентификации, в конфигурационном файле необходимо задать
парольную фразу установив значение директивы $cfg['blowfish_secret'].
 
Error: The configuration file now needs a secret passphrase (blowfish_secret).

Устранить ошибку можно следующим способом, процесс по шагам:

1. Найдите конфигурационный файл подсистемы PHP (файл с именем config.inc.php). Это можно сделать командой:

~# find / -name config.inc.php
/var/www/имя_пользователя/data/www/имя_домена.ru/plugins/editors/fckeditor/editor/plugins/ImageManager/config.inc.php
/etc/phpmyadmin/config.inc.php

Как Вы видите, здесь вывелось сразу несколько файлов с именем config.inc.php. Вероятно, что используется текущий конфигурационный файл (для системы Debian) это /etc/phpmyadmin/config.inc.php. 

2. Откройте этот файл конфигурации config.inc.php. В нем находится строчка, загружающая секретную фразу blowfish_secret, отправляемую браузером из cookie:

// Load secret generated on postinstinclude('/var/lib/phpmyadmin/blowfish_secret.inc.php');

Откройте файл blowfish_secret.inc.php, в нем увидите что-то наподобие:

$cfg['blowfish_secret'] = 'asduy5q30trnaclqeq7q91mb';

Эту секретную строку нужно добавить в куки браузера, чтобы она точно совпадала.  

Для браузера Chrome есть бесплатное расширение EditThisCookie, которое позволяет редактировать файлы cookie.

Посмотреть содержимое cookie можно и без этого расширения через Настройки -> Показать дополнительные настройки -> Личные данные -> Кнопка "Настройки контента..." -> Кнопка "Все файлы cookie и данные сайтов...". 

Отредактируйте cookie для mhpMyAdmin так, чтобы строка в cookie совпадала со значением строки, введенной после знака = в конфигурационном файле blowfish_secret.inc.php (без одиночных кавычек):

phpMyAdmin cookie

3. Перезагрузите сервер Apache:

apache2ctl restart

После этого страничка phpMyAdmin будет открываться нормально. 

Примечание: иногда несмотря на то, что в файле blowfish_secret.inc.php значение переменной $cfg['blowfish_secret'] установлено правильно и точно совпадает с переменной cookie, ошибка появляется все равно. Проблема может быть в том, что у пользователя, от имени которого запущен сервер Apache, не хватает прав для доступа к файлу blowfish_secret.inc.php. В этом случае нужно либо отредактировать права доступа к файлу blowfish_secret.inc.php (чтобы Apache мог его открыть на чтение), либо нужно напрямую отредактировать файл config.inc.php, добавив туда переменную $cfg['blowfish_secret'] вместо подключения файла blowfish_secret.inc.php:

//Исправленное содержимое файла config.inc.php:
...
// Load secret generated on postinst
//include('/var/lib/phpmyadmin/blowfish_secret.inc.php');
$cfg['blowfish_secret'] = 'asduy5q30trnaclqeq7q91mb';
...

[Ссылки]

1phpMyAdmin.
2Установка и настройка phpMyAdmin (документация на английском языке).

 

Комментарии  

 
+1 #2 Ксения 16.06.2014 23:50
Сделала все, как здесь сказано, но вместо консоли у меня белый экран.

microsin: в примере html-скрипта уберите лишние пробелы возле угловых скобок. И ознакомьтесь с оригинальной документацией по установке - времени прошло много с момента публикации статьи, процедура установки могла измениться.
Цитировать
 
 
0 #1 ajev 06.09.2011 20:23
Для того, что-бы не отображалось содержимое папки и всех подпапок, достаточно создать файл для apache ".htaccess" с содержимым: Options -Indexes
Цитировать
 

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


Защитный код
Обновить

Top of Page