1

サーバー IP を指す 2 つの Web サイトしかありませAsite.comBsite.com。Web サイトを追加しようとしたのでCsite.com、サーバー IP を指定しました (ただし、site3.com の仮想ホストはまだ登録していません)。仮想ホストを登録していなくても、Csite.comapacheにアクセスすると認識されるのはなぜですか?Asite.comCsite.com

httpd.conf

Listen 8080
NameVirtualHost *:8080

サイト.com

<VirtualHost *:8080>
        ServerAdmin webmaster@localhost
        ServerName asite.com
        ServerAlias asite.com *.asite.com
        DocumentRoot /var/www/asite.com/public
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/asite.com/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>
        ErrorLog /var/log/httpd/error_log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn
</VirtualHost>

^ Bsite.comも同様

4

3 に答える 3

1

ServerNameが一致しない場合は、最初にリストされたものを使用します。生のIPアドレスを使用してAsite.comにアクセスすることもできます。

それが気に入らない場合は、最初にリストされているものとは別の仮想ホストを作成し、別の<VirtualHost *:8080>場所にリダイレクトするように構成することができます。または、404メッセージなどを送信します。

于 2012-06-03T13:19:41.010 に答える
1

最初の仮想ホストもデフォルトです。

「アスタリスクはすべてのアドレスに一致するため、メインサーバーはリクエストを処理しません。www.example1.comが構成ファイルの最初にあるため、優先度が最も高く、デフォルトサーバーまたはプライマリサーバーと見なすことができます。指定されたServerNameディレクティブのいずれにも一致しないリクエストを受信した場合、この最初のVirtualHostによって処理されます。」

「単一のIPアドレスで複数の名前ベースのWebサイトを実行する」を参照してください。http://httpd.apache.org/docs/2.0/vhosts/examples.html

于 2012-06-03T13:21:47.573 に答える
1

これは、csite.comをローカルホストにポイントし、最初の仮想ホストがローカルホストとして認識されるために発生します。したがって、siteAとsiteBを切り替えると、確実に仮想ホストになり、ブラウザに「localhost」と入力します。またはsitec.comはsiteb.comを表示します

心配しないで; これは問題ではありません。それが起こるはずです。

実際にはsitec.comをlocalhostにポイントしていませんが、hostsファイルで作成した場合は、ドメインをポイントすると、最初に指定したファイルに移動します。

于 2012-06-10T00:35:55.753 に答える