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

ApsaraVideo VOD:オリジン間リソース共有の設定

最終更新日:Jun 23, 2026

異なるオリジン間でリソースを共有またはアクセスする必要がある場合、カスタム HTTP レスポンスヘッダーを設定できます。このトピックでは、ApsaraVideo VOD のリソースでオリジン間リソース共有を有効にする方法について説明します。

オリジン間リソース共有とは

オリジン間リソース共有 (CORS) は、ウェブページが自身のオリジン (ドメイン、プロトコル、またはポート) とは異なるオリジンからリソースにアクセスできるようにする標準的なメカニズムです。これにより、オリジン間のデータ転送を安全に行うことができます。詳細については、「オリジン間リソース共有 (CORS)」をご参照ください。

説明

Q:デフォルトで CDN の CORS が有効になっていない場合はどうなりますか。

デフォルトでは、CDN はオリジン間リソース共有 (CORS) を有効にしていません。この設定がない場合、ブラウザーは同一オリジンポリシーを適用し、オリジン間のリクエストをブロックするため、他のウェブサイトがお客様のリソースを読み込むことができなくなります。

オリジン間リソース共有を設定する理由

セキュリティ上の制約により、ブラウザーは通常、同一オリジンポリシーに従います。これにより、異なるドメイン、サブドメイン、プロトコル、またはポートからのリソースの読み込みやアクセスが制限されます。たとえば、example.comexample.org 上のリソースにアクセスできません。オリジン間リソース共有 (CORS) を設定することで、CDN/ サーバーに関連するレスポンスヘッダーを設定できます。リクエストに許可されたルールを満たすヘッダーが含まれている場合、サーバーは対応する HTTP レスポンスヘッダーを返し、オリジン間のリソースの読み込みとアクセスを許可します。

仕組み

オリジンサーバーでの CORS 設定

image

CDN での CORS 設定

image

オリジン間リソース共有の有効化

  1. ApsaraVideo VOD コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[設定管理]> [CDN設定]> [ドメイン名] を選択します。

  3. ドメイン名 ページで、対象のドメイン名を見つけて [設定] をクリックします。

  4. ドメイン名のナビゲーションペインで、キャッシュ設定 をクリックします。

  5. カスタム HTTP レスポンスヘッダー タブをクリックします。

  6. 追加 をクリックして、カスタム HTTP レスポンスヘッダーを設定します。

  7. 許可するオリジンのパラメーターを設定し、OK をクリックします。

    パラメーター

    [実行内容]

    追加

    [応答ヘッダー]

    Access-Control-Allow-Origin

    [応答ヘッダー値]

    *

    説明
    • 値をアスタリスク (*) に設定すると、あらゆるオリジンからのリクエストを許可できます。

    • 値がアスタリスク (*) でない場合は、1 つ以上の IP アドレス、ドメイン名、またはその両方の組み合わせを指定できます。複数の値はカンマ (,) で区切ります。

    • ヘッダー値が * でない場合は、http:// または https:// で始まる必要があります。

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

    • ワイルドカードドメイン名がサポートされています。

    [重複の許可]

    [いいえ]

    説明
    • はい:重複ヘッダーを許可します。CDN POP は、オリジンサーバーのヘッダーを保持し、同じ名前の新しいヘッダーを追加します。

    • いいえ:重複ヘッダーを禁止します。CDN POP は、オリジンサーバーのヘッダーを新しいヘッダーで上書きします。

    このトピックでは、重複を許可しない例を使用しています。実際の設定は、ご利用の環境によって異なる場合があります。

    重要

    [重複を許可][CORS] の設定は相互に排他的です。[重複を許可][はい] に設定されている場合、CORS 検証は無効になります。

    [CORS]

    有効化

    説明
    • CORS は、[操作][追加] に設定され、[レスポンスヘッダー] が「Access-Control-Allow-Origin」の場合にのみ設定できます。

    • CORS[無効化] または [有効化] に設定できます。デフォルト値は [無効化] です。

      • 無効の場合、CDN ノードはユーザーリクエストの Origin ヘッダーを検証せず、設定された「Access-Control-Allow-Origin」の値のみで応答します。

      • 有効化した場合、CDN ノードは次のルールに従ってユーザーリクエストのオリジン間検証を実行し、検証結果に基づいて「Access-Control-Allow-Origin」の値で応答します。オリジン間検証ルール:

        • ワイルドカード一致:[レスポンスヘッダー] の Access-Control-Allow-Origin の値が「*」に設定されている場合、ユーザーリクエストに Origin パラメーターが含まれているかどうか、またそのパラメーターの値が何であるかに関係なく、Access-Control-Allow-Origin: * ヘッダーが常に返されます。

        • 完全一致:[ヘッダー値] は、カンマ (,) で区切られた 1 つ以上の特定のオリジンに設定されます。

          • リクエストの「Origin」ヘッダーの値が設定された値のいずれかと完全に一致する場合、レスポンスには対応するオリジン間ヘッダーが含まれます。

          • 完全一致がない場合、レスポンスに CORS ヘッダーは含まれません。

        • ワイルドカードドメイン名での一致:[カスタムレスポンスヘッダー] の「Access-Control-Allow-Origin」の値がワイルドカードドメイン名に設定されている場合、システムはリクエストヘッダーの Origin 値がワイルドカードドメイン名と一致するかどうかを検証します。

      • 有効化した場合、[ヘッダー値] のドメイン名にハイフン - が含まれている場合は、値を設定する前にハイフンをエスケープする必要があります。-%- としてエスケープします。例:

        • 元のヘッダー値:http://doc.aliyun-example.com

        • エスケープされたヘッダー値:http://doc.aliyun%-example.com

  8. 許可するメソッドのパラメーターを設定し、OK をクリックします。

    パラメーター

    [実行内容]

    追加

    [応答ヘッダー]

    Access-Control-Allow-Methods

    [応答ヘッダー値]

    GETPOSTPUT

    説明

    複数のメソッドはカンマ (,) で区切ります。

    [重複の許可]

    [いいえ]

    説明
    • はい:重複ヘッダーを許可します。CDN POP は、オリジンサーバーのヘッダーを保持し、同じ名前の新しいヘッダーを追加します。

    • いいえ:重複ヘッダーを禁止します。CDN POP は、オリジンサーバーのヘッダーを新しいヘッダーで上書きします。

    このトピックでは、重複を許可しない例を使用しています。実際の実装は、ご利用の環境によって異なる場合があります。

設定例

例 1

オリジン間リソース共有のレスポンスヘッダー値が単一の値または複数の値 (複数の値はカンマで区切られます) に設定されている場合

  • リクエストヘッダーの「Origin」パラメーターの値が設定された値のいずれかと完全に一致する場合、サーバーは対応するオリジン間ヘッダーで応答します。

  • 完全一致がない場合、レスポンスに CORS ヘッダーは含まれません。

ApsaraVideo VOD コンソールで、Access-Control-Allow-Origin を http://example.com,https://aliyundoc.com に設定します。

  • ユーザーリクエストの Origin ヘッダーが http://example.com の場合、CDN/ の POP (ポイントオブプレゼンス) は Access-Control-Allow-Origin: http://example.com を返します。

  • ユーザーリクエストの Origin ヘッダーが https://aliyundoc.com の場合、CDN/ ノードは Access-Control-Allow-Origin: https://aliyundoc.com を返します。

  • CDN/ ノードは、Origin ヘッダーが http://aliyundoc.com のユーザーリクエストには応答しません (プロトコルの不一致:ユーザーリクエストは HTTP を使用していますが、CDN/ は HTTPS 用に設定されています)。

  • リクエストの Origin ヘッダーが http://aliyun.com の場合、CDN/ の POP は応答しません (ドメインの不一致)。

例 2

Access-Control-Allow-Origin レスポンスヘッダーがワイルドカードドメイン名に設定されている場合、リクエストヘッダーの Origin 値がワイルドカードドメイン名と一致するかどうかを検証します。

ApsaraVideo VOD コンソールで、Access-Control-Allow-Origin を http://*.aliyundoc.com に設定します。

  • ユーザーリクエストに Origin ヘッダー http://demo.aliyundoc.com が含まれている場合、CDN/ の POP は Access-Control-Allow-Origin: http://demo.aliyundoc.com を返します。

  • リクエストの Origin ヘッダーが http://demo.example.com の場合、ドメイン名が一致しないため、CDN/ の POP は応答しません。

  • CDN/ ノードは、Origin ヘッダーが https://demo.aliyundoc.com のユーザーリクエストには応答しません。これは、リクエストが HTTPS プロトコルを使用しているのに対し、CDN/ が HTTP プロトコルで設定されているためです。