デフォルトでは、Alibaba Cloud CDN はクライアント IP アドレスなどの情報を含むリクエストヘッダーをサポートしています。カスタムヘッダーを設定することも可能です。オリジンへのリクエストをカスタマイズするには、「出力リクエストヘッダーの変更」機能を使用して、HTTP リクエストヘッダーを追加、削除、変更、または置き換えます。
背景情報
HTTP リクエストヘッダーは HTTP リクエストメッセージの一部であり、特定のパラメーターをサーバーに渡します。
エッジノードがオリジンサーバーからリソースをリクエストする際、サーバーはオリジンリクエストヘッダー内の情報を読み取ることができます。この機能により、オリジンサーバーに特定のパラメーターを送信するために、オリジンリクエスト内の HTTP リクエストヘッダーを書き換えることができます。
X-Forwarded-For ヘッダーからクライアント IP アドレスを取得する方法については、「クライアント IP アドレスの取得」をご参照ください。
注意事項
出力リクエストとは、CDN を介してオリジンサーバーに送信される HTTP メッセージです。「出力リクエストヘッダーの変更」の構成は、オリジンサーバーに送信される HTTP メッセージにのみ影響し、エッジノードからユーザーに直接提供される HTTP メッセージには影響しません。
ワイルドカードドメイン名に対して出力リクエストヘッダーを変更することはできません。
-
ApsaraVideo VOD は、デフォルトで次のオリジンリクエスト HTTP ヘッダーを転送します。 追加の設定は必要ありません。
オリジン HTTP ヘッダー
説明
例
Ali-Cdn-Real-Ip
POP への接続におけるクライアントの実際の IP アドレス。
Ali-Cdn-Real-Ip:192.168.0.1
X-Forwarded-For
クライアントおよび中間エッジノードの IP アドレス。
X-Forwarded-For:192.168.0.1, 172.16.0.1
X-Client-Scheme
クライアントが POP にリクエストを送信するために使用するアプリケーション層プロトコル(HTTP や HTTPS など)。
X-Client-Scheme:http
Host
オリジンリクエストでアクセスされるオリジンサーバーのドメイン名。
Host:example.com
Via
クライアントリクエストが通過するすべてのエッジノードの名前。
Via:cn2546-10.l1, cache1.cn2546-10, l2cn2547-7.l2, cache1.l2cn2547-7
操作手順
-
ApsaraVideo VOD コンソールにログインします。
左側のナビゲーションウィンドウで、[設定管理]> [CDN設定]> [ドメイン名] を選択します。
-
対象のドメイン名を見つけ、設定 列の [設定] をクリックします。
-
ドメインの左側メニューで、Back-to-Origin をクリックします。
-
[オリジンリクエスト HTTP ヘッダー] タブをクリックします。
-
追加 をクリックし、ヘッダーを設定します。
重要同じリクエストヘッダーに対して競合する操作を構成した場合、優先度に従って実行されます。優先度の順序は 書き換え > 追加 > 変更 および 削除 です。たとえば、同じパラメーターに対して [追加] と [削除] の両方を構成した場合、システムはまずヘッダーを追加し、その後削除します。
機能の構成がルールエンジンで設定されたルール条件を参照している場合、実行順序は機能構成の優先度ではなく、関連付けられたルール条件の優先度に従います。
ヘッダーの追加
ヘッダーの削除
ヘッダーの変更
ヘッダーの置き換え
-
OK をクリックして設定を完了します。
例
例 1
シナリオ:X-Forwarded-For ヘッダーをオリジンリクエストに追加して、クライアント IP と中間プロキシサーバーの IP をオリジンサーバーに渡します。
ApsaraVideo VOD は、デフォルトでオリジンリクエストに X-Forwarded-For ヘッダーを含めます。 ヘッダー名を変更しない限り、設定は不要です。
設定:
-
カスタムヘッダー名:X-Forwarded-For
-
ヘッダー値:$proxy_add_x_forwarded_for
[オリジンリクエスト HTTP ヘッダー] ダイアログボックスで、[ヘッダー操作] を [追加] に設定し、[リクエストヘッダー] パラメーターで [カスタムオリジンリクエストヘッダー] を選択します。 [重複を許可] は [いいえ] に設定します。 次に、[OK] をクリックします。
-
カスタムヘッダー名:X-Forwarded-For
-
ヘッダー値:$proxy_add_x_forwarded_for
例 2
シナリオ:ヘッダーをオリジンリクエストに追加して、クライアントのリアル IP アドレスをオリジンサーバーに渡します。
ApsaraVideo VOD は、デフォルトでオリジンリクエストに Ali-Cdn-Real-Ip ヘッダーを含めます。 このヘッダーには、クライアントのリアル IP アドレスが含まれています。 ヘッダー名を変更しない限り、設定は不要です。
設定:
-
カスタムヘッダー名:X-Real-IP
-
ヘッダー値:$http_ali_cdn_real_ip
[オリジンリクエスト HTTP ヘッダー] ダイアログボックスで、[ヘッダー操作] を [追加] に設定し、[リクエストヘッダー] パラメーターで [カスタムオリジンリクエストヘッダー] を選択します。 [重複を許可] は [いいえ] に設定します。 次に、[OK] をクリックします。
例 3
シナリオ:ヘッダーをオリジンリクエストに追加して、クライアントのリアルポートをオリジンサーバーに渡します。
ApsaraVideo VOD は、デフォルトでオリジンリクエストに Ali-Cdn-Real-Port ヘッダーを含めます。 このヘッダーには、クライアントのリアルポートが含まれています。 ヘッダー名を変更しない限り、設定は不要です。
設定:
-
カスタムヘッダー名:X-Real-Port
-
ヘッダー値:$http_ali_cdn_real_port
[オリジンリクエスト HTTP ヘッダー] ダイアログボックスで、[ヘッダー操作] を [追加] に設定し、[リクエストヘッダー] パラメーターで [カスタムオリジンリクエストヘッダー] を選択します。 [重複を許可] は [いいえ] に設定します。 次に、[OK] をクリックします。



