すべてのプロダクト
Search
ドキュメントセンター

Edge Security Acceleration:送信レスポンスヘッダーの変更

最終更新日:Dec 25, 2025

送信レスポンスヘッダーは、Edge Security Acceleration (ESA) の POP (ポイントオブプレゼンス) がクライアントに送信する HTTP レスポンスメッセージの一部です。POP で送信レスポンスヘッダーを設定して、リソースと共に返されるヘッダーを制御できます。ESA では、送信レスポンスヘッダールールの追加、変更、削除が可能です。

仕組み

クライアントがリソースをリクエストすると、リクエストはまず ESA の POP に到達します。リクエストが ESA の POP でキャッシュミスした場合、POP はオリジンサーバーにオリジンフェッチリクエストを送信してデータを取得します。オリジンサーバーがデータを返した後、ESA の POP は、設定されたレスポンスヘッダールール (特定のヘッダーの追加、置換、削除など) に基づいて元のレスポンスを変更します。最後に、POP は変更されたレスポンスヘッダーを含む完全なリソースをクライアントに返します。このプロセスは、オリジン間アクセス制御の実装、キャッシュポリシーの最適化、その他のビジネス要件を満たすのに役立ちます。

image

利用シーン

  • ESA が返すリソースタイプをクライアントに通知Content-Type: text/html などのレスポンスヘッダーを追加します。これにより、ESA からのファイル形式が HTML であることがクライアントに通知され、クライアントはそれを正しくレンダリングできます。

  • オリジン間リソース共有の有効化:ユーザーが ESA によって提供されるドメイン名からリソースをリクエストする場合、ESA からのレスポンスメッセージに Access-Control-Allow-Origin レスポンスヘッダーを設定できます。これにより、オリジン間リソース共有が有効になります。詳細については、「オリジン間リソース共有の設定」をご参照ください

  • レスポンス動作のカスタマイズ:カスタムヘッダーを追加または変更して、クライアントが受信するレスポンスのコンテンツとフォーマットを調整します。これにより、特定の機能や追跡を実装できます。

注意事項

複数のルールを追加した場合、リストに表示される順序で上から下に実行されます。後続のルールが同じレスポンスヘッダー名を指定した場合、前のルールが上書きされます。これにより、予期しない結果が生じる可能性があります。

例 1

  • レスポンスメッセージにヘッダー test:123 が含まれています。

  • ルールによってヘッダー test:321 が追加されます。

レスポンスメッセージがルールに一致する場合、元のヘッダー test:123test:321 で上書きされます。

例 2

  • レスポンスメッセージにヘッダー test:123 が含まれています。

  • ルールによってヘッダー test:321 が追加され、さらにヘッダー test を削除する別のルールが設定されています。

レスポンスメッセージがルールに一致する場合、元のヘッダー test:123 は削除されます。

操作手順

ルールを追加した後、ユーザーがリソースをリクエストすると、ESAルール実行の優先順位 に基づいてルールを順次照合し、実行します。

  1. ESA コンソールで、サイト管理 を選択します。サイト 列で、対象サイトの名前をクリックします。

  2. 左側のナビゲーションウィンドウで、ルール > 変換ルール を選択します。

  3. [レスポンスヘッダーの変更] タブをクリックし、ESAからクライアントへ を選択します。ルールを追加 をクリックし、ルール名 を入力します。

  4. リクエストが以下のルールと一致する場合... セクションで、リクエスト一致条件を設定します。ルールの設定方法の詳細については、「ルール式の構成」をご参照ください。

  5. [変更][レスポンスヘッダー] セクションで、[操作]を選択し、[レスポンスヘッダー名][レスポンスヘッダーの値]を入力します。

    操作

    タイプ

    説明

    [追加]

    静的

    • 指定されたレスポンスヘッダーをクライアントに送信されるレスポンスに追加します。

    • レスポンスに同じ名前のヘッダーが既に含まれている場合、新しいヘッダーが既存のヘッダーを上書きします。

    名前が x-code で値が key1 のレスポンスヘッダーを追加するには、次のパラメーターを設定します。

    • レスポンスヘッダー名: x-code

    • レスポンスヘッダー値: key1

    動的

    レスポンスヘッダー値はに設定できます。

    クライアント IP アドレスの国またはリージョンを記録するために、名前が Client-Ip-Geo-Location で値が ip.geoip.country のレスポンスヘッダーを追加するには、次のパラメーターを設定します。

    • レスポンスヘッダー名: Client-Ip-Geo-Location

    • [レスポンスヘッダー値]ip.geoip.country

    変更

    静的

    クライアントに送信されるレスポンス内の指定されたレスポンスヘッダーの値を更新します。

    名前が x-code のレスポンスヘッダーを値 key2 に更新するには、次のパラメーターを設定します。

    • レスポンスヘッダー名: x-code

    • レスポンスヘッダーの値key2

    動的

    レスポンスヘッダー値はに設定できます。

    ヘッダー値をクライアント IP アドレスの国またはリージョンに変更するために、名前が Client-Ip-Geo-Location のレスポンスヘッダーを値 ip.geoip.country に更新するには、次のパラメーターを設定します。

    • レスポンスヘッダー名: Client-Ip-Geo-Location

    • [レスポンスヘッダー値]ip.geoip.country

    削除

    重複するレスポンスヘッダーパラメーターがあるかどうかに関わらず、クライアントに送信されるレスポンスから [レスポンスヘッダー名] に一致するすべてのパラメーター値を削除します。

    名前が x-code のレスポンスヘッダーを削除するには、[レスポンスヘッダー名]x-code に設定します。

    説明
    • ali-inner または ali-swift で始まる [レスポンスヘッダー名] を設定しないでください (大文字と小文字は区別されません)。

    • [レスポンスヘッダー値] には複数の値を設定できます。値をコンマ (,) で区切ります。

    • 削除操作は、静的モードと動的モードの両方で同じように機能します。

    • 更新操作は、既存のレスポンスヘッダーを変更します。この操作は、元のレスポンスに指定された名前のヘッダーが存在する場合にのみ有効になります。

  6. [OK] をクリックします。

動的式の例

例 1

クライアントの送信元 IP アドレスを記録するレスポンスヘッダーを追加します。

  • レスポンスヘッダー名:True-Client-IP

  • レスポンスヘッダー値:ip.src

例 2

クライアント IP アドレスに対応する国コードを記録するレスポンスヘッダーを追加します。

  • レスポンスヘッダー名:IP-Country-Code

  • レスポンスヘッダー値:ip.geoip.country

例 2

クライアント IP アドレスに対応する省コードを記録するレスポンスヘッダーを追加します。

  • レスポンスヘッダー名:IP-Province-Code

  • レスポンスヘッダー値:ip.src.subdivision_1_iso_code

レスポンスヘッダーパラメーター

レスポンスヘッダーパラメーター

説明

カスタム

カスタムレスポンスヘッダーを追加できます。カスタムレスポンスヘッダー名は、次の要件を満たす必要があります:

  • 大文字、小文字、ハイフン (-)、数字で構成されます。

  • 長さは 1~100 文字です。

Test-Header

Cache-Control

クライアントプログラムがリクエストとレスポンスに対して従うべきキャッシュ機構を指定します。

no-cache

Content-Disposition

クライアントプログラムがリクエストされたコンテンツをファイルとして保存するときのデフォルトのファイル名を指定します。

examplefile.txt

Content-Type

クライアントプログラムに対するレスポンスオブジェクトのコンテンツタイプを指定します。

text/plain

Pragma

Pragma は HTTP/1.0 で定義された一般ヘッダーです。このヘッダーは通常、サーバーのレスポンスで使用され、ファイルのクライアントのキャッシュ動作を定義します。

no-cache

Access-Control-Allow-Origin

どのオリジンがリソースにアクセスできるかを指定します。これはオリジン間リソース共有 (CORSCross-Origin Resource Sharing) メカニズムの一部であり、サーバーがそのリソースに指定されたオリジンドメイン名からアクセスできるかどうかを宣言できるようにします。このレスポンスヘッダーの値は、次のタイプをサポートしています:

  • ワイルドカード文字 *:ワイルドカード文字を使用して、任意のオリジンがリソースにアクセスできるようにします。この方法は非常に緩やかで、認証や権限付与なしでアクセスできるパブリックリソースに適しています。ただし、クロスサイトリクエストフォージェリ (CSRF) 攻撃などのセキュリティリスクをもたらす可能性があるため、本番環境ではワイルドカード文字を慎重に使用してください。

  • 単一の指定オリジン:単一のオリジンドメイン名を指定して、そのオリジンのみがリソースにアクセスできるようにすることができます。例:http://example.com または https://api.example.com。リクエストは指定されたオリジンから送信される必要があります。そうでない場合、リクエストは拒否されます。

  • *

  • http://www.aliyun.com

Access-Control-Allow-Methods

クロスオリジンリクエストで許可されるメソッドを指定します。複数のメソッドはコンマ (,) で区切ります。

POST,GET

Access-Control-Allow-Headers

クロスオリジンリクエストで許可されるフィールドを指定します。

X-Custom-Header

Access-Control-Expose-Headers

アクセスが許可されるカスタムヘッダーを指定します。

Content-Length

Access-Control-Allow-Credentials

このレスポンスヘッダーは、リクエストへのレスポンスをページに公開できるかどうかを示します。

  • true:レスポンスを公開できます。

  • その他の値:レスポンスを公開できません。

true

Access-Control-Max-Age

特定のリソースに対するプリフライトリクエストの結果のキャッシュ期間を秒単位で指定します。

600

説明
  • レスポンスヘッダー値は * に設定でき、これは任意のオリジンを示します。

  • レスポンスヘッダー値が * でない場合、1 つ以上の IP アドレス、ドメイン名、またはその両方の組み合わせを設定できます。コンマ (,) で区切ります。

  • レスポンスヘッダー値が * でない場合、値にはプロトコル http:// または https:// を含める必要があります。

  • レスポンスヘッダー値にはポート番号を含めることができます。

  • レスポンスヘッダー値はワイルドカードドメイン名をサポートしています。

関連ドキュメント

ルール関連の機能は、実行の優先順位ルールの動作設定範囲が異なります。詳細については、「ESA ルールの有効化の仕組み」をご参照ください。