4

Mac OS 10.7 で VirtualHosts を作成したいので、/etc/apache2/httpd.conf を編集しました。仮想ホストを含​​めるために、「/private/etc/apache2/extra/httpd-vhosts.conf を含める」という行のコメントを外しました。ファイル /private/etc/apache2/extra/httpd-vhosts.conf に次のように記述しました。

NameVirtualHost *:80

<VirtualHost *:80>
    DocumentRoot "/var/www"
    ServerName localhost
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/var/www/someFolder"
    ServerName myApplication.dev
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/var/www/someOhterFolder"
    ServerName myApplication2.dev
</VirtualHost>

以前に削除した 2 つの仮想ホストの例がありました。/etc/hosts ファイルに以下を追加しました。

127.0.0.1 myApplication.dev
127.0.0.1 myApplication2.dev

Apache を再起動し、ブラウザに myApplication.dev と myApplication2.dev と入力しましたが、「サーバーが見つかりません」というエラーが表示され、ブラウザで www.myApplication.dev が作成されます (myApplication2.dev も同様です)。

設定するものを忘れましたか?httpd.conf で PHP を有効にしました。mysql もインストールされていますが、それは仮想ホストとは関係ないと思います。ご協力いただきありがとうございます!

4

4 に答える 4

6

OS X Lion を使用してまったく同じ問題が発生しました。「::1 myhost.dev」を /etc/hosts に追加して修正しました。

127.0.0.1 myhost.dev
::1 myhost.dev

ちなみに、::1 は、Mac から提供される仮想ホストでページの読み込みが非常に遅くなるバグも修正します。

于 2013-02-02T00:29:26.450 に答える
2

私は同じ問題を抱えていましたServerRoot "/usr". httpd.conf ファイルはまだ /etc/apache2 の下にありましたが、この設定は間違った場所を指していました。に変更して修正するとServerRoot "/etc/apache2"、以前のすべての仮想ホスト構成が適切に取得されました。

また、ここで言及されているように、477行目のコメントを外して仮想ホストを再度有効にする必要がありましたhttp://brettterpstra.com/fixing-virtual-hosts-and-web-sharing-in-mountain-lion/上記のパスの問題を修正しました。

于 2012-10-19T16:48:34.337 に答える
2

HTTP プロキシを使用していますか? その場合、myApplication.dev と myApplication2.dev の例外を作成します。

私が言いたかったのは、「server mot found」という問題は、ブラウザがホスト「myapplication.dev」の IP アドレスを見つけられないということです。これは、おそらくホスティング会社によって構成された HTTP プロキシを使用していることが原因である可能性があります。いずれにせよ、サーバーに到達することさえできないため、仮想ホスト構成を試すことはまったくありません。

仮想ホスト構成を試すには、次のように、ターミナル ウィンドウで telnet を使用し、HTTP をサーバーに直接送信します。

yourmacbox:~ yourname$ telnet 127.0.0.1 80

次のテキストが表示されます。

Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.

次に、入力します

GET / HTTP/1.0
Host: myApplication.dev

これで、Web サーバーからの応答が表示されるはずです。これは、接続できるようになると、仮想ホストが機能することを示しています。

于 2012-05-07T12:36:19.403 に答える