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

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

新しいヘッダーの作成

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

ヘッダーを作成する

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

    • Nameフィールドには、ヘッダールール名を入力します (例:My header)。

    • Type メニューから Request を選択し、Action メニューから Set を選択します。

    • Destinationフィールドに、選択したアクションの影響を受けるヘッダーの名前を入力します。

    • Source フィールドに、そのヘッダーに設定される値を入力します。

    • Destination フィールドのヘッダーを変更する場合、Ignore if set メニューから No を選択します。変更しない場合は Yes を選択してください。

    • Priority フィールドに、ヘッダールールを実行する順番を入力します。

      下記の各フィールドの説明にて指定内容それぞれについて詳しく説明します。

  2. Createボタンをクリックします。

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

ヘッダーの編集

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

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

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

各フィールドの説明

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

フィールド説明
名前Name フィールドには、特定のヘッダールールを識別し、覚えておけるような忘れにくい単語やフレーズを指定します。
種類Type メニューは、RequestResponse、またはCacheに設定することができます。Requestを選択すると、ユーザーからのリクエストが変更され、その変更内容はオリジンサーバーへのリクエストにも及びます。Response を選択すると、ユーザーへ返す HTTP レスポンスが変更されます。Cacheを選択すると、オリジンサーバーからの HTTP レスポンスが、Fastly サーバーに保持される前に変更されます。つまり、どのような変更をしてもキャッシュヒットに記憶されるようになります。
アクションAction メニューは、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 の位置情報値。

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

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