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

CDN:オリジンフェッチに関するよくある質問

最終更新日:Jun 13, 2026

オリジンフェッチは、クライアントが CDN ノードにキャッシュされていないリソースを要求した場合、または CDN ノードにプリフェッチタスクをデプロイした場合に発生します。このような場合、CDN ノードはオリジンサーバーからリソースを取得します。本トピックでは、オリジンフェッチに関連する一般的な問題について説明します。

オリジンプロトコルを HTTPS に設定した後、Web サイトにアクセスできなくなり、502 エラーが返される。どのように対処すればよいか?

  • オリジンサーバーが HTTPS アクセスをサポートしているか確認してください。 ブラウザで直接 https://オリジンドメイン名 を開き、オリジンサーバーが正しく応答することを確認します。オリジンサーバーが HTTPS をサポートしていない場合は、オリジンプロトコルを HTTP に変更してください。

  • オリジンポートがオリジンサーバーの HTTPS リッスンポートと一致しているか確認してください。 デフォルトのオリジンポートは 443 です。オリジンサーバーがカスタム HTTPS ポートを使用している場合は、静的 Bak-to-Origin プロトコル ダイアログボックスで、対応する HTTPS ポート (1~65535) を構成してください。

  • オリジン HOST およびオリジン SNI 設定を確認してください。 オリジン IP アドレスが複数のドメイン名にバインドされている場合は、オリジン SNI を構成して、要求されている正確なドメイン名を指定し、オリジン HOST をオリジンドメイン名に設定してください。

  • オリジンサーバーの SSL 証明書の有効性を確認してください。 SSL 証明書が期限切れになっている、またはドメイン名と一致していない場合、CDN ノードでの検証に失敗し、502 エラーが返されます。オリジンサーバーの SSL 証明書を更新してください。

  • より詳細なトラブルシューティングガイドについては、「オリジンプロトコルの構成」ドキュメントの「よくある質問」セクションをご参照ください。

オリジンサーバーを HTTP から HTTPS への自動転送に構成した後、CDN のオリジンフェッチで転送ループが発生する。どのように対処すればよいか?

症状: 「Too many redirects」または「ERR_TOO_MANY_REDIRECTS」といったエラーが Web サイトに表示されます。

原因: オリジンサーバーが HTTP から HTTPS への自動転送を強制しており (301 ステータスを返す)、CDN がオリジンフェッチに HTTP を使用しています。CDN が 301 応答を受け取った後、HTTP で再度リクエストを試行するため、無限の転送ループが発生します。

解決方法:

  1. CDN のオリジンポートを 443 に変更し、オリジンプロトコルを HTTPS に設定します。

  2. オリジンサーバーが複数のドメインをリッスンしている場合は、オリジン SNI およびオリジン HOST の両方を、高速化ドメイン名またはオリジンドメイン名のいずれかに設定します。

  3. Too many redirects の解決方法 に記載されたキャッシュ更新手順を実行します。

CDN が IP アドレスを使用して、SSL 証明書を保持しポート 80 を 443 に転送する Server Load Balancer (SLB) からコンテンツをフェッチする場合、証明書に関する問題やその他の影響は発生するか?

CDN が SLB のパブリック IP アドレスを使用してオリジンフェッチを行い、SLB がポート 80 を 443 に転送している場合、証明書検証の問題を回避するために、CDN のオリジンプロトコルを HTTP (SLB のポート 80 からのフェッチ) に設定してください。オリジンフェッチに HTTPS を使用する必要がある場合は、オリジン SNI を有効にし、Common Name ホワイトリストに証明書のドメインが含まれていることを確認してください。そうしないと、SNI が不足している、またはドメインが一致しないために検証が失敗する可能性があります。

Common Name ホワイトリストはどのような検証を行うか?

オリジンフェッチ中に、システムは CDN ノードから送信されるオリジンリクエスト内の SNI 値と、オリジンサーバーから返された証明書の Common Name を照合します。これらの値が一致しないと、オリジンフェッチは失敗します。

オリジン SNI を変更しない場合、CDN ノードは、オリジンリクエストの Host 値として高速化ドメイン名をデフォルトで使用します。そのため、システムは高速化ドメイン名の証明書の Common Name を検証します。

HTTPS オリジンフェッチ用のカスタムポートを構成する方法

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

  2. 左側のナビゲーションウィンドウで、ドメイン名 をクリックします。

  3. [ドメイン名] ページで、対象のドメイン名を見つけ、[管理] を [操作] 列でクリックします。

  4. ドメインのナビゲーションウィンドウで、Back-to-Origin 設定 をクリックします。

  5. Back-to-Origin プロトコル セクションで、Back-to-Origin プロトコル スイッチをオンにします。

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

  7. 必要に応じてカスタムポートを構成します。

CDN は、高速化ドメインで HTTPS を有効にした後、オリジンフェッチに HTTP または HTTPS のどちらを使用するか?

CDN に HTTPS 証明書を構成しても、オリジンプロトコルには影響しません。デフォルトでは、オリジンプロトコルは オリジンサーバーの構成 で設定されたオリジンポートに依存します。

  • オリジンポートが 443 に設定されている場合、オリジンフェッチは HTTPS を使用します。

  • オリジンポートが 80 または他の値に設定されている場合、オリジンフェッチは HTTP を使用します。

オリジンプロトコルを明示的に指定するには、必要に応じて オリジンプロトコルを構成 してください。

CDN 高速化を有効にした後、オリジンサーバーは引き続きポート 80 をリッスンしている。このポートを開いたままにしておくべきか?無効にすると CDN サービスに影響するか?

オリジンサーバーのポート 80 を無効にする前に、以下の点を確認してください。

  • 高速化ドメイン名のオリジンプロトコルがすでに HTTPS (ポート 443 を使用) に設定されていること。

  • オリジンサーバー上の他のサービスまたはプロセスがポート 80 に依存していないこと (Web サーバーや HTTP 自動転送など)。

オリジンプロトコルがまだ HTTP または「クライアントに従う」に設定されている場合、ポート 80 を無効にすると CDN のオリジンフェッチが失敗します。ドメイン名 > 対象の高速化ドメイン名 > Back-to-Origin 設定 で現在のオリジンプロトコルを確認できます。

オリジンプロトコルが「フォロー」に設定されている場合、オリジンサーバーが HTTPS をサポートしていないためオリジンフェッチが失敗する。どのように対処すればよいか?

原因: オリジンプロトコルが「フォロー」に設定されており、クライアントが HTTPS 経由で CDN にアクセスすると、CDN は HTTPS でオリジンフェッチを実行します。オリジンサーバーが HTTPS をサポートしていない場合、リクエストは失敗します。

解決方法:

  • オプション 1: オリジンプロトコルを「フォロー」から「HTTP」に変更します。これにより、CDN は常に HTTP を使用してオリジンフェッチを行います。

  • オプション 2: オリジンサーバーに SSL 証明書を構成し、HTTPS アクセスをサポートできるようにします。

詳細については、「オリジンプロトコルの構成」ドキュメントをご参照ください。

CDN 経由で OSS リソースにアクセスすると、エラー You have no right to access this object because of bucket acl. が表示される。どのように対処すればよいか?

OSS バケットがプライベートモードに構成されています (アクセス認証を強制し、不正なトラフィック消費を防止)。この場合、このエラーを解消し、CDN がプライベート OSS バケットのリソースを高速化できるようにするには、高速化ドメイン名に対して プライベート OSS バケットオリジンフェッチ 機能を有効にしてください。

CDN 経由で OSS リソースにアクセスすると、エラー This request is forbidden by kms. が表示される。どのように対処すればよいか?

OSS バケットが Key Management Service (KMS) を使用して暗号化されている場合、CDN オリジンロールに KMS キーを使用するための追加権限を付与する必要があります。そうしないと、CDN はこれらのファイルを復号およびアクセスできず、エラー This request is forbidden by kms. が発生します。

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

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

  3. [ロール名] リストで、AliyunCDNAccessingPrivateOSSRole ロールを見つけ、クリックします。

  4. 承認の追加]をクリックします。[プリンシパル]は自動的に入力されます。

  5. [ポリシー] で、[システムポリシー] を選択し、AliyunKMSCryptoUserAccess を検索してクリックし、[選択済みポリシー] ボックスに追加します。

  6. [新しい権限付与の確認] をクリックします。操作が [完了] した旨のメッセージが表示されます。

  7. 無効 をクリックします。

  8. 更新/プリフェッチ 機能を使用してキャッシュをクリアします。更新タスクが完了したら、再度リソースにアクセスしてみてください。

STS を使用して、プライベート OSS バケットからのクロスアカウントオリジンフェッチを有効にする方法

デフォルトでは、CDN はセキュリティトークンサービス (STS) の一時的なセキュリティトークンを使用して、同一の Alibaba Cloud アカウント下のプライベート OSS バケットからのみコンテンツをフェッチします。STS を使用してクロスアカウントオリジンフェッチを有効にするには、OSS に バケットアクセスポリシー を次のように追加します。

  1. プライベートバケットを所有する Alibaba Cloud アカウントにログインし、OSS コンソール に移動します。

  2. バケット > 対象バケット をクリックします。権限管理 > バケット承認ポリシー タブで、新規権限 をクリックします。

    image

  3. ユーザー他アカウント に設定します。ARN フィールドには、CDN がプライベート OSS バケットにアクセスする方法に基づいて次の値を入力します。

    • 直接 STS 認可: arn:sts:{CDN アカウント UID} を入力します。ここで、{CDN アカウント UID} は CDN アカウントの アカウント ID です。

    • ロールの引き受け (AssumeRole): arn:sts::{CDN アカウント UID}:assumed-role/{CDN アカウントロール名}/* を入力します。ここで、{CDN アカウント UID} は CDN アカウントの アカウント ID{CDN アカウントロール名} は CDN が引き受ける RAM ロールの名前です。

    許可された操作 では、簡易設定 > 読み取り専用 (ListObject を除く) を選択し、OK をクリックして構成を完了します。

    image

  4. 構成が成功すると、バケット承認ポリシー タブで認可情報が確認できます。

    image

高速化ドメイン名に CNAME を構成した後、オリジンフェッチが失敗する。どのようにトラブルシューティングすればよいか?

高速化ドメイン名に CNAME レコードを追加した後、CDN ノードがオリジンフェッチに失敗する場合、通常は DNS 解決エラー、オリジンサーバーの誤った構成、または CDN のオリジンフェッチパラメーターの不正確さが原因です。次のようにトラブルシューティングを行ってください。

  1. CNAME 解決が有効になっているか確認します。

    ping 高速化ドメイン名 または nslookup 高速化ドメイン名 を実行します。結果に .*.kunlun*.com が含まれている場合、CNAME 解決は有効になっています。結果が依然としてオリジン IP アドレスを示している、または解決に失敗する場合は、DNS レコード構成を確認してください。

  2. CNAME レコードタイプと競合を確認します。

    レコードタイプは CNAME である必要があります。他のレコードタイプを使用すると、解決に失敗します。単一のホストレコードには、CNAME レコードと他のレコードタイプを同時に設定できません。競合するレコードを削除し、再構成してください。

  3. オリジンサーバーの到達可能性を確認します。

    curl -I http://オリジン IP アドレスまたはドメイン名 を使用して、オリジンサーバーが正しく応答するか確認します。オリジンサーバーが実行中であり、外部ネットワークからアクセス可能であることを保証してください。

  4. オリジンフェッチ用のオリジンサーバーの IP ホワイトリストを確認します。

    CDN ノードはオリジンフェッチに特定の IP 範囲を使用します。オリジンサーバーに IP ホワイトリストまたはファイアウォールルールがある場合は、CDN オリジン向け IP 範囲をホワイトリストに追加してください。そうしないと、オリジンサーバーは CDN のオリジンリクエストを拒否します。

  5. オリジンプロトコルおよびポート構成を確認します。

    CDN で構成されたオリジンプロトコル (HTTP または HTTPS) がオリジンサーバーがサポートするものと一致していること、およびオリジンポートがオリジンサーバーの実際のリッスンポートと一致していることを確認してください。オリジンサーバーが非標準ポートで HTTPS を使用している場合は、CDN でカスタムオリジンポートを構成してください。

CDN 高速化ドメイン名の Server レスポンスヘッダーに AliyunOSS と表示されることは正常か?

いいえ。これは、リクエストが CDN ノードをバイパスして、OSS オリジンサーバーに直接アクセスしていることを示しています。ドメイン名が CDN が提供する CNAME レコードのみに解決されるように、DNS 解決構成を確認・修正してください。

CDN オリジンフェッチが 5XX エラーを返した場合、その後のアクセスではエラーページが返されるか、オリジンリクエストが再試行されるか?

デフォルトでは、CDN は 5XX ステータスコードを持つ応答をキャッシュしません。そのため、後続のリクエストでは、以前のエラーページを返す代わりに、CDN はオリジンリクエストを再試行します。