HTTP リクエストとレスポンスのヘッダー追加及び変更

HTTP ヘッダーフィールドは、HTTP のリクエストとレスポンスメッセージのヘッダーセクションに存在するコンポーネントです。HTTP トランザクションの動作パラメーターを定義します。ヘッダーを作成して設定することにより、ユーザーに対してコンテンツをどのように提供するかを指定することができます。 ヘッダーの追加と編集の方法は以下の通りです。

新しいヘッダーの作成

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

    ヘッダーを作成する

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

    • Name フィールドには、ヘッダールール名を入力します (例えば My header)。
    • Type メニューから Request を選択し、Action メニューから Set を選択します。
    • Destinationフィールドに、選択したアクションの影響を受けるヘッダーの名前を入力します。
    • Sourceフィールドに、そのヘッダーに設定される値を入力します。
    • Destinationフィールドのヘッダーを変更する場合、Ignore if setメニューからNoを選択します。変更しない場合はYesを選択してください。
    • Priorityフィールドに、ヘッダールールを実行する順番を入力します。

    下の各フィールドの説明表でこれらの各コントロールについて詳しく説明します。

  7. Create をクリックします。

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

ヘッダーの編集

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

    Edit this header ウィンドウを編集する

  6. 以下のように Edit this header 設定画面の各フィールドに入力します:

    • Nameフィールドには、ヘッダールール名を入力します (例:My header)。
    • Type メニューから Request を選択し、Action メニューから Set を選択します。
    • Destinationフィールドに、選択したアクションの影響を受けるヘッダーの名前を入力します。
    • Sourceフィールドに、そのヘッダーに設定される値を入力します。
    • Destinationフィールドのヘッダーを変更する場合、Ignore if setメニューからNoを選択します。変更しない場合はYesを選択してください。
    • Priority フィールドに、ヘッダールールを実行する順番を入力します。
  7. Update をクリックします。

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

各フィールドの説明

以下の表では、Header 設定画面の各フィールドについて説明します:

フィールド説明
名前Name フィールドには、特定のヘッダールールを識別し、覚えやすい単語やフレーズを指定します。
種類Type メニューは、RequestResponse、またはCacheに設定することができます。Requestを選択すると、ユーザーからのリクエストが変更され、その変更内容はオリジンサーバーへのリクエストにも及びます。Responseを選択すると、ユーザーへ返す HTTP レスポンスが変更されます。Cacheを選択すると、オリジンサーバーからの HTTP レスポンスが、Fastly サーバーに保持される前に変更されます。つまり、どのような変更をしてもキャッシュヒットに記憶されるようになります。
ActionAction メニューは、SetAppendDeleteRegexRegex All のいずれかに設定することができます。Set (デフォルト) を選択すると、指定したヘッダーに値を設定します (当該ヘッダーがすでに存在している場合は、値を上書きします)。 Appendを選択すると、指定したヘッダーの末尾に値を追加します (ヘッダーが存在しない場合はその値をセットします)。 Deleteを選択するとヘッダーが削除されます。この場合、Header 設定画面の Source フィールドは非表示となります。Regexを選択すると入力した正規表現に基づいて指定したテキストの検索・置換が可能となります。この選択時には、Header 設定画面には Regex および Substitution コントロールが表示されます。Regex All は、Regex と同じですが、検索と置換を複数回行います。 この選択時には、Header 設定画面には Regex および Substitution コントロールが表示されます。
DestinationDestination フィールドは、Action の設定内容が適用されるヘッダー名を指定します。ヘッダールールは HTTP ヘッダー以外にも適用できるので、このフィールドは次の形式に従って入力してください: http.Header-Name
SourceSource フィールドは、Set、Append、Regex、および Regex All のアクションを選択すると表示されます。Action メニューでは、Delete を選択すると、このフィールドは Header 設定画面から非表示となります。Source フィールドはヘッダーに設定する値の参照元を指定しますが、数多くの選択肢があります。最も単純なのは、"My Static String"などの静的文字列です (引用符を含む)。その他のオプションにはclient.ipreq.http.Another-Headerclient.geo.cityなどがあります。主要な情報の参照元については、下記の参照元一覧を参照してください。
RegexRegex フィールドは、Action メニューで Regex または Regex All を選択した場合のみ Header 設定画面に表示されます。このフィールドを使用すると、入力した正規表現に基づいて文字列の検索と置換を行うことができます。
SubstitutionSubstitution フィールドは、Action メニューで Regex または Regex All を選択した場合のみ Header 設定画面に表示されます。このオプションは、正規表現によって削除されたテキストを Substitution フィールドに入力したテキストに置き換えます。
Ignore if setデフォルトでは、このフィールドは No に設定されています。これは、変更しようとするヘッダーがすでに存在する場合、そのヘッダーを変更することを意味します。
PriorityPriority フィールドは、ヘッダールールを実行する順番を決定します (例えば、このフィールドを1にすると、そのヘッダールールが最初に実行されます)。最初にいくつかのヘッダーを設定し、それらに基づいてさらに他のヘッダーを設定する場合は、このフィールドが重要になります。

主要な情報の参照元

Name有効なタイプ説明
req.http.Fastly-Client-IPリクエスト、キャッシュ、レスポンス本当のクライアント IP アドレス。
client.ip および client.identityリクエスト、キャッシュ、レスポンスクライアント IP アドレス。これらの変数は常に利用可能ですが、ソース IP アドレスを表示しているとは限りません。例えば、オリジンシールドが有効な場合、エッジノードの IP が表示されることがあります。実際のクライアント IP アドレスを使用するには、req.http.Fastly-Client-IPを用いてください

重要:クライアント IP データは機密情報として扱われることがあります。転送・保管する場合には機密の IP アドレス情報の安全を保護してください。
server.identityリクエスト、キャッシュ、レスポンスリクエストを処理している Fastly サーバーの固有の識別子。
server.regionリクエスト、キャッシュ、レスポンスFastly サーバーのある地域。
server.datacenterリクエスト、キャッシュ、レスポンスFastly サーバーのあるデータセンター。
req.urlリクエスト、キャッシュ、レスポンスクライアントから送られた HTTP リクエストの URL。
req.http.*リクエスト、キャッシュ、レスポンスHTTP リクエストのヘッダーの値。形式 : req.http.HeaderName
beresp.statusキャッシュオリジンサーバーから返されるステータスコード。
beresp.http.*キャッシュオリジンからの HTTP レスポンスのヘッダーの値。形式 : beresp.http.HeaderName
resp.statusレスポンスクライアントへ返されるステータスコード。
resp.http.*レスポンスクライアントへ返される HTTP レスポンスのヘッダーの値。形式 : resp.http.HeaderName
client.geo.*リクエスト、キャッシュ、レスポンスクライアントの IP の位置情報値。

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

このフォームを使用して機密性の高い情報を送信しないでください。サポートが必要な場合は、サポートチームまでご連絡ください。このフォームは reCAPTCHA によって保護されており、Google のプライバシーポリシー利用規約が適用されます。