私たちのLANでは、Apacheの名前ベースの仮想ホスティングにそれらを使用するつもりで、DNSサーバーにいくつかの「偽の」TLDを設定しました。これを、Ubuntu 10.04 LAMPサーバーでの質量仮想ホスティング(つまりVirtualDocumentRoot)と組み合わせたいと思います。
ただし、適切な仮想ホストを選択することができません!
Apache設定の概要は次のとおりです。
NameVirtualHost 10.10.0.205
<VirtualHost 10.10.0.205>
ServerName *.test
VirtualDocumentRoot /var/www/%-3.0.%-2/test/%1/
CustomLog /var/log/apache2/access.log vhost_combined
</VirtualHost>
<VirtualHost 10.10.0.205>
ServerName *.dev
VirtualDocumentRoot /var/www/%-3.0.%-2/dev/%1/
CustomLog /var/log/apache2/access.log vhost_combined
</VirtualHost>
www.domain.com.devなどのホスト名は10.10.0.205に正しく解決されますが、より密接に一致する下部のホストではなく、常に上部の仮想ホストを選択します。
私は、Apacheが最初にServerNameの照合を試みてから、デフォルトで特定のIPの最上位仮想ホストを設定するという印象を受けました。何が間違っていますか?または、これは不可能であり、TLDごとに別のIPを使用する必要がありますか?
apachectl -S出力(トリミング):
10.10.0.205:* is a NameVirtualHost
default server *.test
port * namevhost *.test
port * namevhost *.dev