Apache は 2 つのドメインから同じサイトを返します

Apache は 2 つのドメインから同じサイトを返します

Apache で問題が発生しているのですが、どうも解決できないようです。

仮想ホスト ファイル内に 2 つの異なる DocumentRoot を指す 2 つのドメインがあります。しかし、これを正しく動作させることができません。追加しようとしていたサイトは 2 番目のドメインからはまったく表示されず、代わりに最初のサイトが表示されます (私の知る限り、これはデフォルトであり、2 番目の仮想ホストに問題があることを意味します)。

私は、新しい Web サイトを最初の仮想ホストの前に置くことでこの問題を回避することができました。つまり、新しい Web サイトは表示されますが、framesetApache によってタグに入れられ、ヘッダーを制御できませんでした。

Raspbian (Debian Linux) で Apache 2.2.22 を実行する

これが私の現在のコードです。

<VirtualHost *:80>
ServerName DIR0.com
ServerAlias www.DIR0.com

DocumentRoot /var/www/DIR0.com/public_html
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/DIR0.com/public_html>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/errors_DIR0.log

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

CustomLog ${APACHE_LOG_DIR}/access_DIR0.log combined

</VirtualHost>

<VirtualHost *:80>

    ServerName DIR1.com
    ServerAlias www.DIR1.com

DocumentRoot /var/www/DIR1/public_html
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/DIR1.com/public_html>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error_DIR1.log

LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access_DIR1.log combined

</VirtualHost>

答え1

設定されているか確認してください

名前仮想ホスト *:80

設定ファイルで。このディレクティブにより、ServerName を VirtualHost の識別として使用できるようになります。これがない場合は、VirtualHost の識別に IP/ポートを使用していることになりますが、これは両方の VirtualHost で同じです。

関連情報