Почему Wordpress может внезапно подключиться к серверу базы данных MySQL после обновления хоста с «localhost» до «mydomain.com»? - PullRequest
1 голос
/ 09 февраля 2009

Это конкретный вариант проблемы «не удается подключиться». В моем случае я только что настроил два виртуальных хоста в моем httpd.conf, прослушивающем порт 80. Объявление выглядит так:

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName site1.dev
    DocumentRoot /www/site1
</VirtualHost>

<VirtualHost *:80>
    ServerName site2.dev
    DocumentRoot /www/site2
</VirtualHost>

Итак, насколько я понимаю, http://localhost и http://site1.dev теперь оба сопоставляются с "/ www / site1 /" и, конечно, http://site2.dev сопоставляются с его каталогом.

Это все хорошо. У меня есть установка Wordpress, с которой я сейчас играю в домене site2.dev. Я пытаюсь настроить его для работы с базой данных MySQL, которую я только что настроил, у которой есть учетная запись «mysql» для «localhost». Поэтому в конфигурации для Wordpress я ввел это имя пользователя и имя хоста как «localhost». Это не работает, поэтому, поиграв с ним некоторое время, я пытаюсь изменить имя хоста на "site2.dev", и вдруг оно работает нормально.

Что здесь происходит? Я понимаю, что мои виртуальные хосты настроены, но я подумал, что они слушают порт 80, а не порт 3306, который использует MySQL, так почему же все это имеет значение? Я уверен, что есть простое объяснение, так что, надеюсь, кто-то сможет просветить меня.

Ответы [ 3 ]

4 голосов
/ 09 февраля 2009

Вероятным подозрением является конфигурация управления доступом MySQL. yourhost.foo и localhost совершенно разные, насколько это касается, и это всегда кусает людей. Если для таблицы пользователя MySQL существуют записи для WP с хостом, настроенным на yourhost.foo, но не на localhost, то это проблема.

0 голосов
/ 09 февраля 2009

Поскольку ваша БД не прослушивает интерфейс обратной связи (localhost).

0 голосов
/ 09 февраля 2009

Вы редактировали файл / etc / hosts как часть настройки ваших виртуальных хостов? Возможно, вы удалили запись "localhost" случайно.

...