- English
- 日本語
HTTP リクエストとレスポンスのヘッダー追加・変更
最終更新日 2023-04-25
HTTP ヘッダーフィールドは、HTTP のリクエストとレスポンスメッセージのヘッダーセクションに存在するコンポーネントです。 HTTP トランザクションの動作パラメーターを定義します。 ヘッダーを作成して設定することにより、ユーザーに対してコンテンツをどのように提供するかを指定することができます。 ヘッダーの追加と編集の方法は以下の通りです。
新しいヘッダーの作成
- Fastly コントロールパネルにログインします。
- Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインによる検索が行えます。
- Edit configuration をクリックし、アクティブなバージョンをクローンするオプションを選択します。
- Content をクリックします。
Create header をクリックします。
以下の要領で、Create a header ページの各フィールドに入力します。
- Name フィールドには、ヘッダールール名を入力します (例えば
My header
)。 - Type メニューから Request を選択し、Action メニューから Set を選択します。
- Destination フィールドに、選択したアクションの影響を受けるヘッダーの名前を入力します。
- Source フィールドに、そのヘッダーに設定する値の参照元を入力します。
- Ignore if set メニューから No を選択し、Destination フィールドのヘッダーを変更します。変更しない場合は Yes を選択してください。
- Priority フィールドに、ヘッダールールを実行する順番を入力します。
下記の各フィールドの説明にて、これらのコントロールそれぞれについて詳しく説明します。
- Name フィールドには、ヘッダールール名を入力します (例えば
Create をクリックします。
- Activate をクリックして設定への変更をデプロイします。
ヘッダーの編集
- Fastly コントロールパネルにログインします。
- Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインによる検索が行えます。
- Edit configuration をクリックし、アクティブなバージョンをクローンするオプションを選択します。
- Content をクリックします。
編集するヘッダーの名前をクリックします。
以下のようにEdit this header 設定画面の各フィールドに入力します。
- Name フィールドには、ヘッダールール名を入力します (例えば
My header
)。 - Type メニューから Request を選択し、Action メニューから Set を選択します。
- Destination フィールドに、選択したアクションの影響を受けるヘッダーの名前を入力します。
- Source フィールドに、そのヘッダーに設定する値の参照元を入力します。
- Ignore if set メニューから No を選択し、Destination フィールドのヘッダーを変更します。変更しない場合は Yes を選択してください。
- Priority フィールドに、ヘッダールールを実行する順番を入力します。
- Name フィールドには、ヘッダールール名を入力します (例えば
Update をクリックします。
- Activate をクリックして設定への変更をデプロイします。
各フィールドの説明
以下の表では、Header 設定画面の各フィールドについて説明します。
フィールド | 説明 |
---|---|
名前 | Name フィールドには、特定のヘッダールールを識別し、覚えやすい単語やフレーズを指定します。 |
種類 | Type メニューは、Request、Response、または Cache に設定することができます。 Request を選択すると、ユーザーからのリクエストが変更され、その変更内容はオリジンサーバーへのリクエストにも及びます。Response を選択すると、ユーザーへ返す HTTP レスポンスが変更されます。 Cache を選択すると、オリジンサーバーからの HTTP レスポンスが、Fastly サーバーに保持される前に変更されます。つまり、どのような変更をしてもキャッシュヒットに記憶されるようになります。 |
Action | Action メニューは、Set、Append、Delete、Regex、Regex All のいずれかに設定することができます。 Set (デフォルト) を選択すると、ヘッダーに値を設定します (当該ヘッダーがすでに存在している場合は、値を上書きします)。 Append を選択すると、ヘッダーの末尾に値を追加します (値が存在しない場合は設定します)。 Delete を選択するとヘッダーが削除されます。 この場合、Header 設定画面の Source フィールドは非表示となります。 Regex を選択すると入力した正規表現に基づいて指定したテキストの検索と置換が可能となります。この選択時には、Header 設定画面には Regex および Substitution コントロールが表示されます。 Regex All は、Regex と同じですが、検索と置換を複数回行います。 この選択時には、Header 設定画面には Regex および Substitution コントロールが表示されます。 |
Destination | Destination フィールドは、Action の設定内容が適用されるヘッダー名を指定します。 ヘッダールールは HTTP ヘッダー以外にも適用できるので、このフィールドは次の形式に従って入力してください: http.Header-Name 。 |
Source | Source フィールドは、Set、Append、Regex、および Regex All のアクションを選択すると表示されます。 このフィールドは、Action メニューから Delete を選択すると、Header 設定画面で非表示となります。Source フィールドは新しくヘッダーに設定する値の参照元を指定しますが、数多くの選択肢があります。最も単純なのは、"My Static String" などの静的文字列です (引用符を含む)。その他のオプションには client.ip 、req.http.Another-Header 、client.geo.city などがあります。主要な情報の参照元については、下記の参照元一覧を参照してください。 |
Regex | Regex フィールドは、Action メニューで Regex または Regex All を選択した場合のみ Header 設定画面に表示されます。このフィールドを使用すると、入力した正規表現に基づいて文字列の検索と置換を行うことができます。 |
Substitution | Substitution フィールドは、Action メニューで Regex または Regex All を選択した場合のみ Header 設定画面に表示されます。このオプションは、正規表現によって削除されたテキストを Substitution フィールドに入力したテキストに置き換えます。 |
Ignore if set | デフォルトでは、このフィールドは No に設定されています。これは、変更しようとするヘッダーがすでに存在する場合、そのヘッダーを変更することを意味します。 |
Priority | Priority フィールドは、ヘッダールールを実行する順番を決定します (例えば、このフィールドを1にすると、そのヘッダールールが最初に実行されます)。最初にいくつかのヘッダーを設定し、それらに基づいてさらに他のヘッダーを設定する場合は、このフィールドが重要になります。 |
主要な情報の参照元
名前 | 有効なタイプ | 説明 |
---|---|---|
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 のプライバシーポリシーと利用規約が適用されます。