tencent cloud

フィードバック

back-to-originの設定

最終更新日:2022-12-20 15:22:30

    概要

    Cloud Object Storage(COS)コンソールを使用して、バケットのback-to-originルールを設定することができます。リクエストしたオブジェクトがバケットに存在しない場合、または特定のリクエストをリダイレクトする必要がある場合は、back-to-originルールを使用して、COSから対応するデータにアクセスすることができます。back-to-originの設定は、主にデータのホットマイグレーションや特定リクエストのリダイレクトなどのシナリオに使用され、実際の必要性に応じて設定することができます。

    説明:

    • back-to-originによるデータプルの成功率はネットワーク環境に依存するため、チャイナテレコム、チャイナモバイル、チャイナユニコムなどのIPセグメントを優先的に使用してください。

    back-to-originルール

    トリガー条件

    • 非同期back-to-originおよび同期back-to-originモードでは、リクエストが404を返した場合のみback-to-originをトリガーします。
    • リダイレクトモードでは、ユーザーは400~599のHTTPステータスコードをカスタマイズしてback-to-originをトリガーすることができます。

    オリジンサーバーにアクセスする

    • 非同期back-to-originおよび同期back-to-originモードでは、COSにアクセスするQueryStringおよびHeader情報をオリジンサーバーにパススルーするかどうか、オリジンサーバーへのリクエストを追加する時に追加のHeader情報を付加するかどうかを設定できます。リダイレクトモードはQueryStringがパススルーするかどうかの設定のみをサポートしています。
    • GET操作時にGET rangeを指定した場合、COSは元のリクエスト以外にさらにrangeなしの非同期リクエストを送信し、完全なオブジェクトデータを取得してCOSに保存します。

    応答と保存

    • オリジンサーバーはchunkedエンコードでデータを返すことをサポートしています。
    • オリジンサーバーが404ステータスコードを返した場合、COSにパススルーしてユーザーに返します。3XX追従ポリシーを有効化した場合、オリジンサーバーが3XXステータスコードを返した時に別のオリジンサーバーにおいてデータをプルします。オリジンサーバーが、その他の2XXではないステータスコードを返した場合、COSは424を返します。
    • back-to-originが返すファイルはオリジンサーバーをリクエストする時に使用するファイル名でCOSに保存されます。例えばあるユーザーがリクエストするファイルexample.jpgがバケットに存在しない場合、COSはback-to-originメカニズムをトリガーしてユーザーが設定したback-to-originアドレス http://origin.com/example.jpg においてファイルをプルし、バケットに保存するファイルをexample.jpgと命名します。
    • COSに保存される新しいオブジェクトには、以下のメタデータが含まれます。データの内容はオリジンサーバーの値に追従します。
      cache-control
      content-disposition
      content-encoding
      content-type
      expires
      x-cos-meta-*
      

    操作手順

    1. COSコンソールにログインします。
    2. 左側ナビゲーションバーでバケットリストをクリックし、バケットリストページに進みます。
    3. back-to-originを設定したいバケットをクリックし、バケット詳細ページに進みます。
    4. 左側ナビゲーションバーで、基本設定 > back-to-originの設定をクリックし、back-to-originリストの追加をクリックします。
    5. ポップアップウィンドウに以下の情報を設定し、次のステップをクリックします。
    • back-to-originモード:実際のニーズに応じてback-to-originモードを選択できます。
      • 非同期back-to-origin:COSで検索するようにリクエストされたファイルが存在しない場合、COSは指定のオリジンサーバーからファイルを検索し、そのファイルをバケットにアップロードしますが、ユーザー側には返しません。
        説明:

        非同期back-to-originは直接ファイルを返さず、まず302をクライアントに返し、さらに非同期でファイルをCOSにアップロードします。

        1. クライアントでFollow 302を有効化し、オリジンサーバーからデータをプルすることをお勧めします。
        2. ファイルのアップロード時間は複数の要因の影響を受け、SLAを承諾できません。適時性を必要とするユーザーがback-to-originの同期を選択することをお勧めします
      • 同期back-to-origin:COSで検索するようにリクエストされたファイルが存在しない場合、COSは指定のオリジンサーバーからファイルを検索し、そのファイルをユーザー側に返してバケットにアップロードします。
      • リダイレクト:バケットへのアクセスをリクエストした時に特定のエラーが発生した場合、COSはリダイレクトアドレスをユーザー側に返し、オリジンサーバーのファイルを保存します。ユーザー側はリダイレクトアドレスによって、オリジンサーバーにリソースへのアクセスをリクエストします。
    • back-to-origin条件:ニーズに応じてback-to-originをトリガーする条件を選択することができます。back-to-originをトリガーするには、設定したすべてのback-to-origin条件が同時に満たされている必要があります。
      • HTTPステータスコード 404:非同期back-to-originまたは同期back-to-originを選択した場合は、 HTTPステータスコードが404の時にback-to-originをトリガーします。この項目は入力必須で、キャンセルすることはできません。リダイレクトback-to-originモードを選択した場合、400~599のHTTPステータスコードを入力できます。
      • ファイル名プレフィックス:リクエストされたファイル名のプレフィックスマッチングを行う際、back-to-originルールがトリガーされます。例えば、ファイル名プレフィックスをprefixに設定してから、 https://examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/prefix123.jpgにアクセスすると、返されるHTTPステータスコードが404であれば、back-to-originルールがトリガーされます。
    • back-to-originプロトコル:COSがお客様が指定したオリジンサーバーにアクセスする際に使用するHTTPプロトコルで、HTTPSの強制、HTTPの強制およびリクエストプロトコルのフォローというオプションがあります。
      • HTTPS/HTTPの強制を選択した場合、COSはHTTPS/HTTPプロトコルを使用してオリジンサーバーにアクセスします。
      • リクエストプロトコルのフォローを選択すると、COSは、お客様がCOSにリクエストしたプロトコルでオリジンサーバーにアクセスします。
    • リクエストパラメータ:COSにアクセスする際に付加されるqueryStringリクエストパラメータをオリジンサーバーに透過的に送信するかどうかです。
    • 透過的に指定されたリクエストヘッダー:ここでは、オリジンサーバーに透過的に送信したいヘッダー情報を追加することができます。リダイレクトback-to-originのタイプを選択した場合は、この項目は設定されません。
    • リクエストヘッダーの追加:ここでは、オリジンサーバーにback-to-originするときに付加するリクエストヘッダーを追加することができます。リダイレクトback-to-originのタイプを選択した場合は、この項目は設定されません。
    1. 選択したback-to-originモードに応じて、以下の情報を選択して設定し、次のステップをクリックします。
    • back-to-originアドレス:ドメイン名またはIPアドレスを入力するだけで、ドメイン名またはIPアドレスの後にポート番号を追加できます。プレフィックスhttp://またはhttps://を付ける必要はありません。
      正しいアドレスの例は次のとおりです。
      abc.example.com
      abc.example.com:8080
      202.96.128.86
      202.96.128.86:8080
      
    • back-to-アドレスのバックアップ:ドメイン名またはIPアドレスをサポートしています。具体的なアドレスの設定をサポートしています。次のような項目を設定することができます。
      • 固定ファイル:back-to-originルールがトリガーされると、デフォルトですべてが固定されたファイルにジャンプします。
      • 指定プレフィックス:back-to-originルールがトリガーされると、指定されたプレフィックスを持つファイルにジャンプします。例えば、指定されたプレフィックスがtestの場合、https://examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/prefix123.jpgにアクセスした際にback-to-originルールがトリガーされ、<back-to-originアドレス>/test/prefix123.jpgにジャンプします。
      • 指定拡張子:back-to-originルールがトリガーされると、指定された拡張子を持つファイルにジャンプします。例えば、指定された拡張子が.jpgの場合、https://examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/prefix123にアクセスした際にback-to-originルールがトリガーされ、<back-to-originアドレス>prefix123.jpgにジャンプします。
        Note:
        • 固定ファイルを選択した場合、他の2種類のタイプはデフォルトでは選択できません。
        • 指定されたプレフィックスと指定された拡張子の設定を同時に有効にすることができます。
    • 3xxフォローポリシー:有効にすると、オリジンサーバーが3XXリダイレクトステータスコードを返す場合、COSのデフォルトの処理ポリシーは3XXに従って、別のオリジンサーバーからデータを再度プルすることになります。無効を選択してもリソースはプルされません。
    1. 設定したback-to-originルールが正しいことを確認し、OKをクリックします。
      ルールを追加すると、システムは新しいルールに最高の優先度を割り当てます。COSは、最高の優先度のルールに従ってback-to-originを行います。また、ルールリストページの変更ボタンをクリックして、優先順位を調整することもできます。

    事例

    背景
    APPIDは、1250000000のユーザー用に、 examplebucket-1250000000という名前のバケットを作成し、ドメイン名へのCDNアクセラレーションアクセスを有効にします。

    examplebucket-1250000000.file.myqcloud.com
    

    バケットのback-to-originアドレスを、次のように設定します。

    abc.example.com
    

    オリジンサーバーhttp://abc.example.comに画像picture.jpgを保存します。

    クライアントの初回アクセス(back-to-originの同期が有効でない場合)

    http://examplebucket-1250000000.file.myqcloud.com/picture.jpg
    

    COSは、オブジェクトをヒットできなかったと判断すると、クライアントにHTTPステータスコード302を返し、以下のアドレスにジャンプします。

    http://abc.example.com/picture.jpg
    

    クライアントの初回アクセス(back-to-originの同期が有効である場合)

    http://examplebucket-1250000000.file.myqcloud.com/picture.jpg
    

    COSは、オブジェクトをヒットできなかったと判断すると、クライアントにHTTPステータスコード200を返し、以下のアドレスにジャンプします。

    http://abc.example.com/picture.jpg
    

    この時点で、オブジェクトはオリジンサーバーからクライアントに提供され、アクセスが保証されます。同時にCOSは、オリジンサーバーからpicture.jpgをコピーし、バケットexampleのルートディレクトリに保存します。

    2回目のアクセス

    http://examplebucket-1250000000.file.myqcloud.com/picture.jpg
    

    COSは、ルートディレクトリのpicture.jpgオブジェクトに直接アクセスし、それをクライアントに返します。

    お問い合わせ

    カスタマーサービスをご提供できるため、ぜひお気軽にお問い合わせくださいませ。

    テクニカルサポート

    さらにサポートが必要な場合は、サポートチケットを送信して弊社サポートチームにお問い合わせください。24時間365日のサポートをご提供します。

    電話サポート(24 時間365日対応)