1

これは、「接続できない」問題の特定のバリエーションです。私の場合、ポート 80 でリッスンする httpd.conf に 2 つの仮想ホストをセットアップしました。宣言は次のようになります。

NameVirtualHost *:80

<仮想ホスト *:80>
    サーバー名 site1.dev
    ドキュメントルート /www/site1
</仮想ホスト>

<仮想ホスト *:80>
    サーバー名 site2.dev
    DocumentRoot /www/site2
</仮想ホスト>

したがって、私の理解では、http://localhosthttp://site1.devは両方とも "/www/site1/" にマップされ、もちろんhttp://site2.devはそのディレクトリにマップされます。

これはすべて順調です。現在、site2.dev ドメインの下で遊んでいる Wordpress インストールがあります。「localhost」のアカウント「mysql」を持つ、セットアップしたばかりのMySQLデータベースで動作するように構成しようとしています。そのため、Wordpress の構成では、そのユーザー名とホスト名を「localhost」として入力しました。これではうまくいかないので、しばらくいじってから、ホスト名を「site2.dev」に変更してみたら、いきなりうまくいきました。

何が起きてる?仮想ホストがセットアップされていることは理解していますが、MySQL が使用するポート 3306 ではなく、ポート 80 でリッスンしていると思いました。簡単な説明があると思いますので、誰かが私を啓発できることを願っています。

4

3 に答える 3

4

おそらく疑わしいのは、MySQL アクセス制御構成です。yourhost.foo と localhost は、それに関する限り、完全に異なっており、それは常に人々を悩ませています。WP の MySQL ユーザー テーブル エントリが存在し、ホストのキーyourhost.fooが ではなくlocalhostである場合、それが問題です。

于 2009-02-09T03:40:54.660 に答える
0

DB がループバック インターフェイス (localhost) をリッスンしていないためです。

于 2009-02-09T04:03:58.177 に答える
0

仮想ホストのセットアップの一環として /etc/hosts ファイルを編集しましたか? 誤って「localhost」エントリを削除した可能性があります。

于 2009-02-09T03:34:39.823 に答える