Apacheでホストヘッダーを変更する方法

Apacheでホストヘッダーを変更する方法

2つの仮想ホスト(www.test1.comとwww.test2.com)があります。 www.test2.com 仮想ホストのホストヘッダーを www.test1.com に変更したいと思います。構成ファイルを生成しましたが、機能しません。

w1.conf

<VirtualHost *:80>
ServerName www.test1.com
ServerAlias test1.com
DocumentRoot /var/www/html/test1
ErrorLog /etc/httpd/logs/w1error.log
CustomLog /etc/httpd/logs/w1requests.log combined
</VirtualHost>

w2.conf

<VirtualHost *:80>
ServerName www.test2.com
ServerAlias test2.com
DocumentRoot /var/www/html/test2
RequestHeader set Host "www.test1.com"
ErrorLog /etc/httpd/logs/w2error.log
CustomLog /etc/httpd/logs/w2requests.log combined 
</VirtualHost>

ベストアンサー1

httpd.confのディレクティブを使用してヘッダーを設定できますAddHeader。しかし、Host応答でこのフィールドを設定することが何であるか疑問に思います。

HTTPHostフィールドはリクエストの一部です。~から顧客到着仕える人。このフィールドにより、Webサーバー(あなたの場合はApache httpd、nginxの場合)は使用する仮想ホストを決定します。

あなたのコメントの1つで述べたようにHAProxyを使用しているので、要求されたフィールドをオーバーライドしたいと思います。ただ削除して追加してください。

    reqdel ^Host:
    reqadd Host:\ www.test1.com

おすすめ記事