2013-07-15 3 views
0

Я установил чистые копии XAMPP на совершенно чистую установке нескольких окон 7 и Windows 8 машин в попытке получить PHPMyAdmin работать на любого компьютера с любого установить и не смогли.PHPMyAdmin Не Разрешение подключения

Все машины имеют следующую странную ошибку.

При попытке подключения к 127.0.0.1/phpmyadmin -или- localhost/phpmyadmin:

Error Message

Но - если машина имеет локальную сеть IP, скажем, 192.168.1.12, и я провожу свой браузер: 192.168.1.12/phpmyadmin - это загружается просто отлично, без ошибок!

Таким образом, мои компьютеры могут подключаться к PHPMyAdmin самостоятельно через сеть или друг к другу через сеть просто отлично, но никогда не с localhost.

Это правая часть, когда я получить доступ к PHPMyAdmin через сеть, как, что: PHPMyAdmin details

Что я пробовал:

Я провел много часов, пытаясь всеми возможными исправлениями я мог найти на интернет-форумах, в том числе:

  • Редактирование файла хоста моего компьютера
  • Редактирование xampp/phpmyadmin/config.inc.php тысячи различных способов
  • Переустановка XAMPP, переустановке окна и XAMPP, вручную удалить и переустановить MySQL/PHP/PHPMyAdmin и т.д.
  • Пытаясь узнать о гнездах и если там может быть ошибка сокета MySQL какой-то что я не могу диагностировать. Тем не менее, MySQL работает нормально, и я могу запустить командную строку и войти в систему с правами администратора и выполнить команды MySQL. Я также могу запускать команды PHP PDO MySQL из своих собственных веб-приложений localhost без проблем, поэтому я почти уверен, что установка PHPMyAdmin виновата, в отличие от самого MySQL.

Независимо от того, что я делаю, я всегда может работать PHPMYADMIN просто отлично от 192.168.1.x/phpmyadmin, но никогда от 127.0.0.1/phpmyadmin или localhost/phpmyadmin.

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

спасибо.

+0

Как выглядит ваш httpd.conf? – Pieter

+0

Что-нибудь особенное в вашем файле hosts? – Callombert

+0

@metareviewr Это все полностью чистые копии Windows без изменений в файле hosts. Я попытался изменить файл hosts бесчисленными способами, и ничего не помогает. (Включая добавление строки '127.0.0.1 localhost' и т. Д.) – Leng

ответ

1

Я думаю, что вижу вашу проблему. Я думаю, что проблема связана с вашим config.inc.php, если вы посмотрите на ошибку, которую он говорит:

«Не удалось подключиться к контроллеру, как определено в вашей конфигурации».

Так что я уверены, что ваша проблема исходит из этих строк коды:

/* User for advanced features */ 
$cfg['Servers'][$i]['controluser'] = 'pma'; 
$cfg['Servers'][$i]['controlpass'] = ''; 

Сейчас стараются только держать эти строки в config.inc.php и посмотреть, если он работает. Вы можете либо удалить остальные, либо прокомментировать остальные. Также вы можете попробовать изменить auth_type на «cookie».

/* 
* This is needed for cookie based authentication to encrypt password in 
* cookie 
*/ 
$cfg['blowfish_secret'] = 'xampp'; /* YOU SHOULD CHANGE THIS FOR A MORE SECURE COOKIE AUTH! */ 

/* 
* Servers configuration 
*/ 
$i = 0; 

/* 
* First server 
*/ 
$i++; 

/* Authentication type and info */ 
$cfg['Servers'][$i]['auth_type'] = 'config'; 
$cfg['Servers'][$i]['user'] = 'root'; 
$cfg['Servers'][$i]['password'] = ''; 
$cfg['Servers'][$i]['extension'] = 'mysqli'; 
$cfg['Servers'][$i]['AllowNoPassword'] = true; 
$cfg['Lang'] = ''; 

/* Bind to the localhost ipv4 address and tcp */ 
$cfg['Servers'][$i]['host'] = '127.0.0.1'; 
$cfg['Servers'][$i]['connect_type'] = 'tcp'; 

Основа на то, что страница PHP грядет и PHPMyAdmin дает вам об ошибке означает, что это не проблема с файлом хостов или .conf файла. Я предполагаю, что вы всегда копируете и вставляете тот же файл config.inc.php, чтобы вы получали одинаковые проблемы на каждой машине.

+0

Большое вам спасибо за это решение, вы абсолютно правы. Как вы думаете, я должен поднять флаг с XAMPP, чтобы удалить эти строки 'controluser' из их по умолчанию' phpmyadmin/config.inc.php'? Он не прерывает соединения localhost для Windows XP, но он работает для Windows 7 и Windows 8. – Leng

+0

Нет проблем. Не уверен, что я всегда копирую и вставляю файл config.inc.php в любую новую установку PhpMyAdmin, потому что у меня есть 10 серверов с настраиваемой настройкой, поэтому я не знаю, что входит в значение по умолчанию. Также FYI, если бы вы набрали эту ошибку, вы бы нашли немало ответов: http://stackoverflow.com/questions/11506224/connection-for-controluser-as-defined-in-your-configuration-failed-phpmyadmin -xa – Pitchinnate

+0

Хороший совет. Возможно, проблема заключалась в том, что я искал с помощью Google, а не с функцией поиска Stack Overflow. Я попытался пройти десятки ответов «Переполнение стека», связанных с подобными вопросами, но так и не встретил тот, с которым вы только что связались. – Leng

0

127.0.0.1 - это то же самое, что и localhost, и относится к вашему фактическому компьютеру. Если вы пытаетесь подключиться к 127.0.0.1, phpMyAdmin пытается открыть соединение с локальным MySQL-сервером (который существует только на одном компьютере, вы его установили ..)

Если вы хотите центральный сервер MySQL, у вас есть для использования правильного ip-адреса (можно определить с помощью ifconfig/ipconfig) и использовать его. Во-вторых, вы должны разрешить внешнее подключение к этому серверу. По умолчанию используется только разрешить Connections от 127.0.0.1 (это только машина MySQL Server). Чтобы разрешить корневой доступ с чужих машин, вы должны отредактировать файл mysql.ini, который содержит до тех пор, пока я знаю свойство, которое запрещает подключения к корню с чужих машин.

+0

Я не хочу, чтобы центральный сервер MySQL, и я не хочу получать доступ к PHPMyAdmin по сети. Я хочу получить к нему доступ либо из: 127.0.0.1/phpmyadmin', либо из 'localhost/phpmyadmin'. В настоящее время также невозможно. Однако я могу получить доступ к нему просто: 192.168.1.12/phpmyadmin'. Это проблема, которую я пытаюсь решить. – Leng

+0

Итак, в принципе, я могу легко получить доступ к PHPMyAdmin из сети (и нескольких других машин). Я также могу легко получить доступ к нему с той же машины, на которой он включен, но я должен ввести сетевой адрес машины вместо localhost. Я хочу иметь возможность вводить localhost (или 127.0.0.1) из -same-machine. – Leng

+0

- 127.0.0.1 и 192.168.1.12 такая же машина? – Philipp

Смежные вопросы