久しぶりになりますが、Varnishの記事です。
前回はVarnishでリダイレクト専用Webサーバの構築をご紹介しました。
今回は、単純なキャッシュサーバではありますが、オリジンサーバへのアクセス時に、ユーザーがリクエストした場合のHostヘッダではなく、任意のHostヘッダに変更してアクセスする設定になります。
ユーザーのリクエスト時のHostヘッダのままで、オリジンサーバ(origin.suz-lab.com)にアクセスする場合は、単純に/etc/varnish/default.vclを下記のように設定するだけで大丈夫です。
backend default { .host = "origin.suz-lab.com"; .port = "80"; }
但し、バーチャルホストの関係などで、Hostヘッダを変更してアクセスする場合は、下記のように、vcl_recvのreq.http.hostに変更したいホスト名を設定します。
backend default { .host = "origin.suz-lab.com"; .port = "80"; } sub vcl_recv { set req.http.host = "origin.suz-lab.com"; return (lookup); }
以上で、オリジンサーバはバーチャルホスト(origin.suz-lab.com)のコンテンツを返すようになります。