httpd でサブドメインを設定する際の問題

httpd でサブドメインを設定する際の問題

サブドメインが表示されなくて困っています。HTTPDを使っていて、conf.dに次のように設定しました。

<VirtualHost *:80>
    ServerName wp.{domain}.com
    SetEnvIfNoCase HOST ^wp\.{domain}\.com\.?(:80)?$ PROTECTED_HOST

    DocumentRoot /var/www/html/wp.{domain}.com

    LogLevel info ssl:warn
    ErrorLog ${APACHE_LOG_DIR}/wp.error.log
    CustomLog ${APACHE_LOG_DIR}/wp.access.log combined

    DirectoryIndex index.php

    SetEnv APPLICATION_ENV development

    <Directory /var/www/html/wp.{domain}.com/>
        AuthUserFile /root/htpasswd
        AuthType Basic
        AuthName "Password Protected"

        Order Deny,Allow
        Satisfy any
        Deny from all
        Require valid-user
        Allow from env=!PROTECTED_HOST
    </Directory>
</VirtualHost>

これをhttpd.confにも入れました

私のホストファイルは次のようになります

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

127.0.0.1       {domain}.com        wp.{domain}.com
192.237.179.187 {domain}.com        wp.{domain}.com
10.208.155.37   serve.smart.com     wp.{domain}.com

私が受け取っているエラーは_default_ VirtualHost overlap on port 80, the first has precedence

NameVirtualHost *:80サブドメインを追加中に動作が停止する

これを修正するにはどうすればいいでしょうか?

答え1

ServerAlias {domain}.comvhost 設定が不足しているようです。

その vhost が唯一のもの、またはデフォルト (最初の) のものである場合、一致しないホスト名はすべてその vhost に送られるので、問題にはなりません。ただし、表示されるエラー メッセージから判断すると、他の vhost もあるようです。それらが何であるかは教えていただけませんでした。

なぜ wp.domain.com が 3 つの異なる IP アドレスに解決されるのですか? 試したことがないので、最初、最後、ランダム、またはラウンドロビンのどれになるのかわかりません。

関連情報