HTTP ヘッダー一覧(リクエスト/レスポンス)

ページ内の表で、リクエストとレスポンスのHTTPヘッダーを名前・意味・例の3列で確認できます。ブラウザーの検索(Ctrl/Cmd+F)で目的のヘッダーへ直接移動できます。

ブラウザ内でローカルに実行
HTTP リクエストヘッダー
ヘッダー 意味
Acceptクライアントがレスポンスで処理できるメディアタイプ。 Accept: text/plain, text/html
Accept-Charsetクライアントが受け入れる文字エンコーディング。現在の HTTP では廃止されています。 Accept-Charset: utf-8
Accept-Encodingクライアントがデコードできるコンテンツコーディング(gzip や br など)。 Accept-Encoding: gzip, br
Accept-Language優先するレスポンス言語。q 値で重み付けすることもできます。 Accept-Language: en, zh
Authorizationオリジンサーバーへのリクエストを認証するために使用される認証情報です。 Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Cache-Controlリクエストのキャッシュディレクティブ(例: no-cache や max-age)です。 Cache-Control: no-cache
Connectionホップバイホップの接続オプションを制御します。プロキシによって転送されてはいけません。 Connection: close
Cookie対象オリジンに対して以前に保存された Cookie です。 Cookie: sessionId=abc123
Content-Lengthリクエスト本文のサイズ(バイト単位)です。 Content-Length: 348
Content-Typeリクエスト本文のメディアタイプと、オプションの文字エンコーディングです。 Content-Type: application/x-www-form-urlencoded
Dateリクエストメッセージが生成された日時です。ブラウザーから送信されることはほとんどありません。 Date: Tue, 15 Nov 2016 08:12:31 GMT
Expectサーバーが満たすべき期待条件です。最も一般的なのは 100-continue です。 Expect: 100-continue
Fromクライアントを操作するユーザーの連絡先アドレス(任意)です。ほとんど使用されません。 From: user@example.com
Host対象ホストと省略可能なポートです。HTTP/1.1 リクエストでは必須です。 Host: example.com
If-Match現在の ETag が指定された値のいずれかと一致する場合にのみリクエストを実行します。 If-Match: "33a64df5"
If-Modified-Since指定された日付以降に変更された場合にのみ、表現を返します。 If-Modified-Since: Sat, 29 Oct 2016 19:43:31 GMT
If-None-Match現在の ETag が指定された値と一致しない場合にのみリクエストを実行します。 If-None-Match: "33a64df5"
If-Rangeバリデータがまだ一致する場合にのみ範囲を送信し、それ以外の場合は完全な表現を送信します。 If-Range: "33a64df5"
If-Unmodified-Since指定された日付以降にリソースが変更されていない場合にのみ、リクエストを実行します。 If-Unmodified-Since: Sat, 29 Oct 2016 19:43:31 GMT
Max-ForwardsTRACE または OPTIONS リクエストを転送できるプロキシの数を制限します。 Max-Forwards: 10
Pragmaレガシーな HTTP/1.0 のキャッシュ制御フィールドで、一般的には Pragma: no-cache として使用されます。 Pragma: no-cache
Proxy-Authorizationプロキシへのリクエストを認証するために使用される資格情報です。 Proxy-Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Range選択された表現から1つ以上のバイト範囲を要求します。 Range: bytes=500-999
Refererリクエストを開始したページの URL です。仕様上、歴史的なフィールド名はスペルミスがあります。 Referer: https://example.com/page
TEクライアントが受け入れる転送コーディングと、任意でトレーラーへの対応を示します。 TE: trailers
Upgrade現在の接続でサーバーが切り替えるようクライアントが招待するプロトコルです。 Upgrade: h2c
User-Agentリクエストを行うクライアントソフトウェアを識別します。 User-Agent: Mozilla/5.0 (X11; Linux x86_64)
Viaリクエストを転送した仲介者を一覧表示します。 Via: 1.1 example.com (nginx)
Warning追加のキャッシュ警告のための廃止されたフィールド。現在の HTTP 仕様からは削除されています。 Warning: 199 example.test "Miscellaneous warning"
HTTP レスポンスヘッダー
ヘッダー 意味
Accept-Rangesサーバーがサポートする範囲の単位。通常は bytes です。 Accept-Ranges: bytes
Ageレスポンスが生成または再検証されてからキャッシュ内に存在している秒数。 Age: 12
Allow対象リソースがサポートするリクエストメソッド。 Allow: GET, HEAD
Cache-Controlmax-age、no-cache、private、no-store などのレスポンスのキャッシュディレクティブ。 Cache-Control: no-cache
Content-Encodingレスポンスボディに適用されるコンテンツコーディング。gzip や br など。 Content-Encoding: gzip
Content-Languageレスポンス表現の自然言語(1 つまたは複数)。 Content-Language: en, zh
Content-Lengthレスポンスボディのサイズ(バイト単位)。 Content-Length: 348
Content-Locationレスポンスに含まれる特定の表現の URL。 Content-Location: /index.html
Content-MD5メッセージ内容のための廃止された MD5 ダイジェストフィールド。サポートされている場合は Digest または Content-Digest を使用してください。 Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ==
Content-Range部分レスポンスで送信されるバイト範囲と、表現全体のサイズ。 Content-Range: bytes 21010-47021/47022
Content-Typeレスポンス本文のメディアタイプと、任意の文字エンコーディング。 Content-Type: text/html; charset=utf-8
Dateオリジンサーバーがレスポンスを生成した日時。 Date: Tue, 15 Nov 2016 08:12:31 GMT
ETag選択された表現のバージョンを識別する不透明なバリデータ。 ETag: "33a64df5"
Expiresキャッシュされたレスポンスが古くなったとみなされる日時。 Expires: Thu, 01 Dec 2016 16:00:00 GMT
Last-Modifiedオリジンがリソースの最終変更日時とみなす日時。 Last-Modified: Tue, 15 Nov 2016 12:45:26 GMT
Locationリダイレクトに使用される、または新しく作成されたリソースを識別するための URL。 Location: https://example.com/new-page
Pragmaレガシーな HTTP/1.0 のキャッシュフィールド。現代のレスポンスでは Cache-Control が推奨されます。 Pragma: no-cache
Proxy-Authenticateプロキシが要求する認証方式とパラメータ。 Proxy-Authenticate: Basic realm="example"
Refresh一部のブラウザが対応している非標準のリフレッシュ指示です。必要に応じて HTTP リダイレクトを優先してください。 Refresh: 5; url=https://example.com/
Retry-Afterクライアントが再試行すべきタイミングを、日付または秒単位の遅延で表現します。 Retry-After: 120
Serverオリジンサーバーのソフトウェアに関する情報です。詳細なバージョン開示はフィンガープリンティングのリスクを高める可能性があります。 Server: Apache/2.4 (Unix)
Set-Cookieユーザーエージェントに Cookie を作成または更新します。 Set-Cookie: sessionId=abc123; Max-Age=3600; HttpOnly
Trailerチャンク化されたメッセージのトレーラーセクションに現れる可能性があるフィールドを指定します。 Trailer: Max-Forwards
Transfer-Encodingメッセージのフレーミングに使用されるホップバイホップの転送符号化方式です。HTTP/1.1 では通常チャンク化が使われます。 Transfer-Encoding: chunked
Varyキャッシュが保存済みレスポンスを選択する際に考慮する必要があるリクエストフィールドを示します。 Vary: Accept-Encoding
Viaレスポンスを転送した中継者を列挙します。 Via: 1.1 example.com (nginx)
Warning追加のキャッシュ警告のための廃止されたフィールド。現在の HTTP 仕様からは削除されています。 Warning: 199 example.test "Miscellaneous warning"
WWW-Authenticateオリジンサーバーが要求する認証方式とチャレンジパラメータを示します。 WWW-Authenticate: Basic realm="example"

リクエスト/レスポンス表の読み方

このページは静的なリファレンスです。2つの表で、クライアントが送れるリクエストヘッダー29件と、サーバーが返すレスポンスヘッダー28件を、短い説明と例つきで一覧します。

ヘッダー名と例はプロトコルの表記なので、どの言語でも同じままです。翻訳されるのは「意味」の列だけです。データは送信されず、入力を求めるスクリプトもありません。表はHTMLの一部として配信されます。

  1. Ctrl+F(macOSでは Cmd+F)を押してフィールド名を入力すると、その行へ直接移動できます。ページに検索ボックスはありません。
  2. 「ヘッダー」列の名前を読みます。メッセージに書くのはこの綴りです。フィールド名は大文字小文字を区別しませんが、ここに表示される慣例的な表記を、他のツールやサーバーログも使います。
  3. 「意味」列でフィールドの役割と状態を確認します。Accept-Charset、Pragma、Warning、Content-MD5、Refresh の5件には、廃止・レガシー・非標準の注記があり、代替がある場合はその名前も示します。
  4. 「例」列で実際のヘッダー行の形を見て、予約済みの値(example.com、example.test、テスト用の認証情報など)を自分の値に置き換えます。
  5. 別のリファレンスが必要なときは、上のタブ(User-Agent、Content-Type、メソッド、ステータスコード、ASCII、HTMLエスケープ)に切り替えます。

各列の意味と、このリファレンスが扱わない範囲

2つの表の分け方

リクエストヘッダーはブラウザー、APIクライアント、プロキシが送れるフィールドで、レスポンスヘッダーはサーバーが返すフィールドです。Cache-Control、Content-Length、Content-Type、Date、Pragma、Via、Warning の7つは両方向に送れるため両方の表にあり、各行はその向きを説明しています。

Accept-Ranges、Age、ETag、Location、Retry-After などの応答専用の項目は2つ目の表に置き、フィールドが誤った側に現れないようにしています。並び順は元のリファレンスに従っており、おおむねアルファベット順です。

例と列が示さないこと

例は形式を示すためのもので、既定値ではありません。「Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==」は Aladdin:open sesame のbase64表現、「Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ==」は「Check Integrity!」を表します。形式の確認には役立ちますが、そのまま本番に使う値ではありません。

説明には変更点も書かれています。Content-MD5 は Digest や Content-Digest に置き換わり、Warning は現在のHTTP仕様から削除され、Refresh はHTTPリダイレクトで代替できる非標準の機能です。この表はフィールドを説明するだけで、手元のヘッダーを検証はしません。

このページがしないこと

入力欄も実行ボタンも、URLへのリクエストもありません。公開中のサイトのヘッダーを調べることはできないため、それにはHTTPリクエストツールや curl -I などのコマンドラインクライアントを使います。

閲覧中にKivToolsへ送信されるものはなく、絞り込みUIもありません。Ctrl+F はテキスト検索だけなので、カテゴリ(キャッシュ関連など)や状態でのグループ分けはできません。

最近使ったツール: