3

Apacheで仮想ホストを構成しようとしたとき。こんなものを入れて、

NameVirtualHost *:80

<VirtualHost *:80>
   DocumentRoot /xampp/htdocs/gift
   ServerName gift.loc  
</VirtualHost>

そして、ホストファイルに次のようなものを入れました。

127.0.0.1       localhost
127.0.0.1       gift.loc

そして、私はそれをブラウザで実行し、

http://gift.loc - is fine

しかし、これを使ってみたところ、

http://localhost/othersite - can't found

設定するものがありませんか? 何か案は...

前もって感謝します、

4

4 に答える 4

4

Apache で処理するすべてのホストに VirtualHost エントリが必要です。リクエストに一致する VirtualHost が他にない場合、構成ファイルの最初のものがデフォルトとして使用されます。

たとえば、次の場合:

<VirtualHost *:80>
   DocumentRoot /xampp/htdocs/gift
   ServerName gift.loc  
</VirtualHost>

<VirtualHost *:80>
   DocumentRoot /example/htdocs/gift
   ServerName example.com  
</VirtualHost>

foob​​ar.org へのリクエストは、gift.loc 仮想ホストによって処理されます。

于 2010-11-03T02:27:12.743 に答える
3

vhosts.conf に localhost を入れる必要があります

    NameVirtualHost *:80

    <VirtualHost *:80>
       DocumentRoot /xampp/htdocs/
       ServerName localhost
    </VirtualHost>

    <VirtualHost *:80>
       DocumentRoot /xampp/htdocs/gift
       ServerName gift.loc  
    </VirtualHost>

これは問題なく動作します (必ず apache を再起動してください)。構成を確認する必要がある場合は、(少なくとも Linux では) httpd -S を実行できます。

于 2012-10-25T08:01:36.523 に答える
0

ドキュメントによると、サービスを提供するホストごとにブロックを作成する必要があるようです。

さらに同じドキュメントで、仮想ホストを既存の Web サーバーに追加する場合は、既存のホストのブロックも作成する必要があります。

于 2010-11-03T02:24:00.453 に答える