アセットを別のオリジンにルーティングする

お客様によっては、複数のオリジンサーバーにアセットを保存している場合や、お客様が提供する基準 (アセットの種類、ファイルディレクトリ、ホストヘッダーなど) に基づいて、さまざまなリクエストを特定の異なるサーバーにルーティングする必要がある場合があります。Fastly では、VCL に if ステートメントのブロックを追加するだけで、オリジンに条件を設定することができます。

基本設定:オリジンごとに条件を作成する

  1. Fastly コントロールパネルにログインします。
  2. Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインでの検索が行えます。
  3. Edit configuration ボタンをクリックし、アクティブなバージョンをクローンするオプションを選択します。ドメインページが表示されます。
  4. Origins をクリックします。Origins ページが表示されます。
  5. オリジンサーバーの名前の右側にある Attach a condition をクリックします。新しいリクエスト条件の作成 ウィンドウが表示されます。

    ホストをリダイレクトする新しい条件

  6. Create a new request condition フィールドを以下のように記入してください。

    • Nameフィールドに、分かりやすい条件の名前を入力します。
    • Apply if フィールドに、オリジンサーバーに適用したい条件を入力します。例えばホストに req.http.host ~ "www.example.com" と入力します。また、コンテンツタイプ/URL について、req.url ~ ".(jpg|png|gif)($|\?)" と入力するとします。
  7. Save and apply to ボタンをクリックします。新しく設定した条件が Origins ページに表示されます。

  8. Activate ボタンをクリックして設定変更をデプロイします。

バックアップ設定:ヘッダーの作成

オリジンにすでに条件が割り当てられている場合があります。オリジンに対する複数のリクエスト条件を「and」や「or」でグループ化することはできますが、各オリジンに付加できる条件ルールは1つのみです。リクエスト条件をグループ化せずに個別に適用したい場合は、代わりにヘッダールールを使用して、アセットを別のオリジンにルーティングすることができます。

  1. Fastly コントロールパネルにログインします。
  2. Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインでの検索が行えます。
  3. Edit configuration ボタンをクリックし、アクティブなバージョンをクローンするオプションを選択します。ドメインページが表示されます。
  4. Content をクリックします。Content ページが表示されます。
  5. Create header ボタンをクリックします。Create a header ページが表示されます。

    Create a header ページ

  6. 以下の要領では、Create a header ページの各フィールドに入力します。

    • Name フィールドに、Image Backend (または意味のある任意の名前) と入力します。
    • Type メニューから Request を選択し、Action メニューから Set を選択します。
    • Destination フィールドに backend と入力します。
    • Source フィールドにImage_Backendと入力します。(これは、お客様のグローバルオリジンサーバーの名前と一致する必要があります。正確な名前は VCL で確認できます。ページ上部の VCL ボタンをクリックします。)
    • Ignore if set メニューから No を選択します。
    • Priority フィールドに 10 を入力します。
  7. Create ボタンをクリックします。Content ページに新しいヘッダーが表示されます。

  8. Content ページで、先ほど作成したヘッダーの隣にある Attach a condition をクリックします。新しいリクエスト条件の作成 ウィンドウが表示されます。

    リダイレクトの新しい条件

  9. Create a new request condition フィールドを以下のように記入してください。

    • Name フィールドに、Redirect Images (または意味のある任意の名前) と入力します。
    • Apply if フィールドに、req.url ~ "\.(jpg|png|gif)($|\?)" と入力します。
  10. Save and apply to ボタンをクリックします。Content ページに条件が表示されます。

  11. Activate ボタンをクリックして設定変更をデプロイします。
ヒント

条件の設定の詳細については、ガイドをご参照ください。

VCL スニペットを使用してオリジンを指定する

VCLスニペットを使用してオリジンを指定することもできます。オリジンを設定したら、条件付きでそのオリジンにトラフィックをルーティングすることができます。

  1. Fastly コントロールパネルにログインします。
  2. Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインでの検索が行えます。
  3. Edit configuration ボタンをクリックし、アクティブなバージョンをクローンするオプションを選択します。ドメインページが表示されます。
  4. VCL Snippets のリンクをクリックします。VCL スニペットのページが表示されます。

  5. Create Snippet をクリックします。Create a VCL スニペットページが表示されます。

    バックエンドリダイレクト

  6. Name フィールドに、適切な名前 (例:Send Images to Images Backend) を入力します。

  7. Type のセクションで within subroutine を選択します。

  8. Select subroutine メニューから、recv (vcl_recv を選択します。

  9. VCL フィールドに、以下の条件を追加します:

    1if (req.url.ext ~ "(jpg|png|gif)") {
    2 set req.backend = Image_Backend;
    3}
  10. Create をクリックしてスニペットを作成します。

  11. Activate ボタンをクリックして設定変更をデプロイします。

翻訳についての注意事項
このガイドは役に立ちましたか?

このフォームを使用して機密性の高い情報を送信しないでください。サポートが必要な場合はお問い合わせください : support@fastly.com