DuraSite-Edgeがクライアントから受け取ったリクエストをオリジンサーバーへ転送する際に、オリジンサーバーがクライアントの情報を得る手助けとなるよう、特定のHTTPリクエストヘッダを付与または編集します。
機能概要 #
DuraSite-Edgeは、オリジンサーバーがクライアントの接続元情報などを把握したり、特定の処理を行ったりするのを助けるために、以下のHTTPリクエストヘッダをオリジンへのリクエストに追加・編集します。
X-Forwarded-For
ヘッダ (標準動作):- このヘッダは、リクエストがプロキシサーバー(DuraSite-Edgeを含む)を経由した場合に、元のリクエスト送信元であるクライアント(エンドユーザー)のIPアドレスをオリジンサーバーに伝えるための、事実上の標準ヘッダです。
- DuraSite-Edgeは、クライアントから受け取ったリクエストをオリジンへ転送する際に、接続元クライアントのIPアドレスをこのヘッダに追加します。
- もし、クライアントからのリクエストに既に
X-Forwarded-For
ヘッダが存在していた場合(例: クライアントが別のプロキシを経由していた場合)、DuraSite-Edgeは既存の値の末尾にカンマ(,
)とスペースを付けて、接続元クライアントのIPアドレスを追記します。(例:元の値, DuraSite-Edgeに接続したクライアントIP
) - これにより、オリジンサーバーは、直接接続してくるDuraSite-EdgeのIPアドレスだけでなく、実際にアクセスしてきたエンドユーザーのIPアドレスを知ることができます。
- 独自ヘッダ(個別対応・特殊キャッシュルール用など):
- キャッシュオブジェクトを特定の基準(例: アクセス元のデバイス種別、地域、ログイン状態など)で分割するような、標準機能を超える高度なキャッシュ戦略を実現するために、リクエストの内容(例:
User-Agent
ヘッダ、特定のCookie)に基づいて弊社が設定する独自のHTTPヘッダ(例:X-Device-Type: mobile
,X-User-Group: premium
)がオリジンへのリクエストに付与されることがあります。 - これは**標準機能ではなく、お客様の特定の要件に応じた個別対応(専用ルール設定など)**となり、弊社エンジニアによる設定作業が必要です。
- キャッシュオブジェクトを特定の基準(例: アクセス元のデバイス種別、地域、ログイン状態など)で分割するような、標準機能を超える高度なキャッシュ戦略を実現するために、リクエストの内容(例:
設定方法 #
X-Forwarded-For
ヘッダの動作:- クライアントIPアドレスを
X-Forwarded-For
ヘッダに追加する動作は、本サービスの標準動作です。 - お客様側でこの機能を有効にするための特別な設定は通常不要です。
- クライアントIPアドレスを
- 独自ヘッダの追加(特殊なキャッシュルール用):
- キャッシュオブジェクト分割等に利用される独自ヘッダの追加や、それに伴うキャッシュルールの設定は、お客様自身では行えません。
- このような設定が必要な場合は、実現したい内容について担当の営業まで詳細をご相談ください。 弊社エンジニアによる設定作業が必要となります。
主なユースケース #
- アクセス元IPアドレスの記録・分析: オリジンサーバーのWebサーバー(Apache, Nginxなど)やアプリケーションのログ設定を変更し、
X-Forwarded-For
ヘッダの値をアクセスログに記録します。これにより、DuraSite-Edgeを経由していてもエンドユーザーの実際のIPアドレスを把握でき、より正確なアクセス解析、不正アクセス試行の調査、地域別統計などが可能になります。 - IPアドレスに基づくコンテンツ制御: オリジンサーバー側のWebアプリケーションで
X-Forwarded-For
ヘッダの値を読み取り、IPアドレスから推定される国や地域に応じて表示言語や通貨を切り替えたり、特定のIPアドレスレンジからのアクセスに対してアクセス制限や機能制限を行ったりします。 - 開発・デバッグ時の挙動確認: 開発中やテスト時に、特定クライアントからのリクエストがオリジンサーバーにどのように届き、クライアントIPが正しく認識されているかを確認するために利用します。
- 独自ヘッダの活用(要相談・弊社設定):
- 高度なキャッシュ制御(デバイスタイプ別など): モバイルデバイスとデスクトップPCで表示内容が大きく異なるサイトにおいて、User-Agentヘッダなどからデバイスタイプを判別し、弊社が独自ヘッダ(例:
X-View-Mode: mobile
/X-View-Mode: desktop
)を付与するよう設定します。このヘッダ値の違いによってキャッシュオブジェクトを分割(キャッシュキーに含める)ことで、各デバイスに最適化されたコンテンツをキャッシュから高速に配信することを目指します。(※実現には専用ルールの設定が必要となるため、個別にご相談ください。)
- 高度なキャッシュ制御(デバイスタイプ別など): モバイルデバイスとデスクトップPCで表示内容が大きく異なるサイトにおいて、User-Agentヘッダなどからデバイスタイプを判別し、弊社が独自ヘッダ(例: