この記事では、標準的なHTTPヘッダーフィールドと注目すべき非標準的なHTTPヘッダーフィールドを一覧表示します。
コアとなるフィールド群は、インターネット技術タスクフォース(IETF)によってRFC 9110および9111で標準化されています。フィールド名、ヘッダーフィールド、および暫定登録リポジトリはIANAによって管理されています。追加のフィールドは、Webアプリケーションによって定義される場合があります。
以前は、非標準のヘッダーフィールド名には が接頭辞として付けられていましたX-が、非標準フィールドが標準になったときに不便が生じるため、この慣習は 2012 年 6 月に廃止されました。[ 1 ]の使用に関する以前の制限はDowngraded-2013 年 3 月に解除されました。[ 2 ]
一部のフィールド値にはコメントが含まれる場合があります(User-Agent、Server、Via フィールドなど)。これらのコメントはソフトウェアによって無視されることがあります。[ 3 ]
多くのフィールド値には、等号で区切られた品質(q)キーと値のペアが含まれる場合があり、これはコンテンツネゴシエーションで使用する重みを指定します。[ 4 ]例えば、ブラウザは、ドイツ語または英語の情報を受け入れることを、ドイツ語を優先するものとして、のq値をよりも高く設定することで示すことができます。deen
Accept-Language: de; q=1.0, en; q=0.5
このセクションでは、リクエストで使用されるヘッダーフィールドを一覧表示します。
[RFC 3229、永続] リクエストに対する許容可能なインスタンス操作。[ 5 ]
例えば:A-IM: feed
[RFC 9110、永続]レスポンスに受け入れられるメディアタイプ。コンテンツネゴシエーションを参照してください。
例えば:Accept: text/html
[RFC 9110、永続的] 許容される文字セット。
例えば:Accept-Charset: utf-8
[RFC 7089、暫定版] 期限内に承認されるバージョン。
例えば:Accept-Datetime: Thu, 31 May 2007 20:35:00 GMT
[RFC 9110、永続] 許容されるエンコーディングのリスト。HTTP圧縮を参照してください。
例えば:Accept-Encoding: gzip, deflate
[RFC 9110、永続] 応答に使用可能な人間の言語のリスト。コンテンツネゴシエーションを参照してください。
例えば:Accept-Language: en-US
[永続的] Origin (下記参照)とのクロスオリジンリソース共有のリクエストを開始します。[ 6 ]
例えば:Access-Control-Request-Method: GET
[RFC 9110、永続的] HTTP認証の認証資格情報。
例えば:Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
[RFC 9111、永続]リクエストとレスポンスのチェーン全体にわたってすべてのキャッシュメカニズムが従わなければならないno-cache指示を指定するために使用されます。HTTP/1.1 によると、この値により、ブラウザはサーバーと中間キャッシュにリソースの最新バージョンが必要であることを伝えることができます。HTTP/1.0 のPragma: no-cacheヘッダーフィールドも同じ目的です。[ 7 ]
Pragma: no-cacheレスポンスにおける動作は規定されていませんが、一部のユーザーエージェントはそれをサポートしています。[ 8 ] HTTP/1.1 では、この動作に依存しないように特に警告しています。
例えば:Cache-Control: no-cache
[RFC 9110、永続] 現在の接続の制御オプションとホップごとのリクエストフィールドのリスト。[ 9 ] HTTP/2 では使用してはならない。[ 10 ]
例えば:Connection: keep-aliveConnection: Upgrade
[RFC 9530、ダイジェストフィールド] [ 11 ] Content-Digest ヘッダーは、HTTP メッセージで送信されるリテラルバイトに対してダイジェストを計算することで、メッセージコンテンツの完全性を検証できるようにします。このダイジェストは、Content-Encoding などの変換を適用した後のコンテンツを反映しており、ネットワークを介して送信されるものと完全に一致します。
[RFC 9110、永続] データに使用されるエンコーディングの種類。HTTP圧縮を参照してください。
例えば:Content-Encoding: gzip
[RFC 9110、永続] リクエストボディの長さ(オクテット単位、8ビットバイト)。
例えば:Content-Length: 348
[RFC 1544、1864、4021、廃止]リクエストボディの内容をBase64エンコードしたバイナリMD5サム。 [ 12 ]
例えば:Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ==
[RFC 9110、永続]リクエストの本文のメディアタイプ(POSTおよびPUTリクエストで使用)。
例えば:Content-Type: application/x-www-form-urlencoded
[RFC 2965、6265、永続的]サーバーが以前に送信したHTTP クッキーSet-Cookie(下記参照)。
例えば:Cookie: $Version=1; Skin=new;
[RFC 9110、永続的] メッセージが発信された日時(RFC 9110: HTTP Semantics、セクション 5.6.7「日付/時刻フォーマット」で定義されている「HTTP-date」形式)。
例えば:Date: Tue, 15 Nov 1994 08:12:31 GMT
[RFC 9110、永続的] クライアントが特定のサーバー動作を要求することを示します。
例えば:Expect: 100-continue
[RFC 7239、永続] HTTPプロキシ経由でWebサーバーに接続するクライアントの元の情報を開示する。 [ 13 ]
例えば:Forwarded: for=192.0.2.60;proto=http;by=203.0.113.43Forwarded: for=192.0.2.43, for=198.51.100.17
[RFC 9110、永続的]リクエストを行ったユーザーの電子メールアドレス。
例えば:From: user@example.com
[RFC 9110、9113、永続]サーバーのドメイン名(仮想ホスティングの場合)と、サーバーがリッスンしているTCP ポート番号。要求されたサービスの標準ポートである場合は、ポート番号を省略できます。HTTP/1.1 以降必須です。[ 14 ]リクエストが HTTP/2 で直接生成される場合は、使用しないでください。[ 15 ]
例えば:Host: en.wikipedia.org:8080Host: en.wikipedia.org
[RFC 7540、9113、廃止] HTTP/1.1 から HTTP/2 へのアップグレード要求には、必ず 1 つのHTTP2-Settingsヘッダー フィールドを含める必要があります。このHTTP2-Settingsヘッダー フィールドは、接続固有のヘッダー フィールドであり、HTTP/2 接続を制御するパラメータを含み、サーバーがアップグレード要求を受け入れることを想定して提供されます。[ 16 ] [ 17 ]
例えば:HTTP2-Settings: token64
[RFC 9110、永続] クライアントから提供されたエンティティがサーバー上の同じエンティティと一致する場合にのみアクションを実行します。これは主に、PUTなどのメソッドで、ユーザーが最後に更新してから変更されていないリソースのみを更新する場合に使用されます。
例えば:If-Match: "737060cd8c284d8af7ad3082f209582d"
[RFC 9110、永続]コンテンツが変更されていない場合、 304 Not Modifiedを返すことを許可する。
例えば:If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT
[RFC 9110、永続的]コンテンツが変更されていない場合は、 304 Not Modifiedを返すことができます。HTTP ETag を参照してください。
例えば:If-None-Match: "737060cd8c284d8af7ad3082f209582d"
[RFC 9110、永続的] エンティティが変更されていない場合は、不足している部分を送ってください。そうでない場合は、新しいエンティティ全体を送ってください。
例えば:If-Range: "737060cd8c284d8af7ad3082f209582d"
[RFC 9110、永続的] エンティティが特定の時間以降に変更されていない場合にのみ応答を送信します。
例えば:If-Unmodified-Since: Sat, 29 Oct 1994 19:43:31 GMT
[RFC 9110、永続] メッセージがプロキシまたはゲートウェイを介して転送される回数を制限します。
例えば:Max-Forwards: 10
[RFC 6454、永続]クロスオリジンリソース共有のリクエストを開始します(サーバーにAccess-Control-*レスポンスフィールドを要求します)。[ 6 ]
例えば:Origin: http://www.example-social-network.com
[RFC 9111、旧バージョン] リクエストとレスポンスのチェーンのあらゆる場所でさまざまな影響を与える可能性のある実装固有のフィールド。
例えば:Pragma: no-cache
[RFC 7240、永続] クライアントが、リクエストの処理中にサーバーが特定の動作を実行するように要求できるようにします。
例えば:Prefer: return=representation
[RFC 9110、永続的] プロキシに接続するための認証資格情報。
例えば:Proxy-Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
[RFC 9110、永続] エンティティの一部のみを要求します。バイトは0から番号が付けられます。バイトサービングを参照してください。
例えば:Range: bytes=500-999
[RFC 9110、永続的] 現在要求されているページへのリンクがたどられた前のウェブページのアドレス。
本来は「referrer」と綴るべき用語だが、RFCやほとんどの実装においてこの綴りの間違いが用いられているため、正しい用語とみなされている。
例えば:Referer: http://en.wikipedia.org/wiki/Main_Page
[RFC 9110、永続] ユーザーエージェントが受け入れる転送エンコーディング: レスポンスヘッダーフィールド Transfer-Encoding と同じ値を使用できます。さらに、「trailers」値 (「chunked」転送方法に関連) を使用して、最後のゼロサイズのチャンクの後にトレーラーで追加のフィールドを受信することをサーバーに通知します。 HTTP/2 では のみがtrailersサポートされています。[ 10 ]
例えば:TE: trailers, deflate
[RFC 9110、永続的] Trailer の一般フィールド値は、指定されたヘッダーフィールドのセットが、チャンク転送コーディングでエンコードされたメッセージのトレーラーに存在することを示します。
例えば:Trailer: Max-Forwards
[RFC 9110、永続] エンティティを安全にユーザーに転送するために使用されるエンコード形式。現在定義されているメソッドは、chunked、compress、deflate、gzip、identity です。HTTP/2 では使用しないでください。[ 10 ]
例えば:Transfer-Encoding: chunked
[RFC 9110、永続的]ユーザーエージェントのユーザーエージェント文字列。
例えば:User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20100101 Firefox/12.0
[RFC 9110、永続] サーバーに別のプロトコルへのアップグレードを要求します。HTTP/2 では使用しないでください。[ 10 ]
例えば:Upgrade: h2c, HTTPS/1.3, IRC/6.9, RTA/x11, websocket
[RFC 9110、永続] リクエストが送信されたプロキシをサーバーに通知します。
例えば:Via: 1.0 fred, 1.1 example.com (Apache/1.1)
[RFC 7234、9111、廃止] エンティティボディに問題がある可能性があるという警告。[ 18 ]このヘッダーはサーバーから送信されず、クライアントからも確認されないことが多いため、このヘッダーとそのコードは、2022 年に HTTP ワーキンググループによってRFC 9111で廃止されました。[ 19 ]
以下のキャッシュ関連の警告コードはRFC 7234で規定されています。[ 20 ] [ 21 ]
例えば:Warning: 199 Miscellaneous warning
混合コンテンツをホストしているサーバー(おそらくHTTP→HTTPS移行の途中)に、クライアントはHTTPSへのリダイレクトを希望し、処理できることを伝えるContent-Security-Policy: upgrade-insecure-requests[ 22 ]
例えば:Upgrade-Insecure-Requests: 1
主にAjaxリクエストを識別するために使用されます(ほとんどのJavaScriptフレームワークはこのフィールドに値を送信しますXMLHttpRequest)。また、WebViewを使用するAndroidアプリも識別します。[ 23 ]
例えば: X-Requested-With: XMLHttpRequest
ウェブ アプリケーションにユーザーの追跡を無効にするよう要求します。これは Mozilla の X-Do-Not-Track ヘッダー フィールドのバージョンです ( Firefox 4.0 Beta 11 以降)。Safari とIE9もこのフィールドをサポートしています。[ 24 ] 2011 年 3 月 7 日、IETF に提案の草案が提出されました。[ 25 ] W3Cトラッキング保護ワーキング グループが仕様を作成中です。[ 26 ] [ 27 ]
例えば:
DNT: 1(トラッキング拒否機能有効)
DNT: 0(トラッキング拒否機能は無効になっています)
HTTPプロキシまたはロードバランサーを介してWebサーバーに接続するクライアントの発信元IPアドレスを識別するための事実上の標準。Forwardedヘッダーに置き換えられました。[ 28 ]
例えば: X-Forwarded-For: client1, proxy1, proxy2X-Forwarded-For: 129.78.138.66, 129.78.64.103
リバースプロキシ(ロードバランサー)のホスト名やポートがリクエストを処理するオリジンサーバーと異なる可能性があるため、HTTP リクエストヘッダーでクライアントが要求した元のホストを識別するための事実上の標準。Forwardedヘッダーに置き換えられました。[ 29 ]Host
例えば:
X-Forwarded-Host: en.wikipedia.org:8080
X-Forwarded-Host: en.wikipedia.org
HTTP リクエストの発信元プロトコルを識別するための事実上の標準。リバースプロキシ (またはロードバランサー) は、リバースプロキシへのリクエストが HTTPS であっても、HTTP を使用して Web サーバーと通信する可能性があるためです。このヘッダーの代替形式 (X-ProxyUser-Ip) は、Google サーバーと通信する Google クライアントで使用されます。Forwarded ヘッダーに置き換えられました。[ 30 ]
例えば:X-Forwarded-Proto: https
Microsoft アプリケーションおよびロードバランサーで使用される非標準のヘッダー フィールド。[ 31 ]
例えば:Front-End-Https: on
リクエストで指定されたメソッド(通常は POST)を、ヘッダーフィールドで指定されたメソッド(通常は PUT または DELETE)で上書きするように Web アプリケーションに要求します。これは、ユーザー エージェントまたはファイアウォールが PUT または DELETE メソッドの直接送信をブロックする場合に使用できます(これは、修正すべきソフトウェア コンポーネントのバグであるか、意図的な構成であるかのいずれかであり、その場合はバイパスすることが間違ったことになる可能性があります)。[ 32 ]
例えば:X-HTTP-Method-Override: DELETE
AT&T デバイスの User-Agent 文字列によく見られる MakeModel/Firmware の解析を容易にします。[ 33 ]
例えば:X-Att-Deviceid: GT-P7320/P7320XXLPG
インターネット上のXMLファイルへのリンクで、現在接続中のデバイスに関する完全な説明と詳細が記載されています。右側の例は、AT&T Samsung Galaxy S2のXMLファイルです。[ 34 ]
例えば:x-wap-profile: http://wap.samsungmobile.com/uaprof/SGH-I777.xml
HTTP仕様の誤解から実装されました。初期のHTTPバージョンの実装ミスが原因でよく見られます。標準のConnectionフィールドとまったく同じ機能を持っています。HTTP/2では使用しないでください。[ 35 ] [ 10 ]
例えば:Proxy-Connection: keep-alive
Verizon Wirelessの顧客を識別する固有IDのサーバー側ディープパケットインスペクション。別名「パーマクッキー」または「スーパークッキー」。[ 36 ] [ 37 ] [ 38 ]
例えば:X-UIDH: ...
クロスサイトリクエストフォージェリを防止するために使用されます。代替ヘッダー名は次のとおりです。X-CSRFToken[ 39 ]およびX-XSRF-TOKEN。[ 40 ] [ 41 ]
例えば:X-Csrf-Token: i8XNjC4b8KVok4uw5RftR38Wgp2BFwql
クライアントとサーバー間の HTTP リクエストを関連付けます。traceparent ヘッダーに置き換えられました。[ stackoverflow2 1 ] [ 42 ] [ 43 ] [ 44 ] [ 45 ]
例えば:X-Request-ID: f058ebd6-02f7-4d3f-942e-904344e8cde5
Chrome、Opera、Yandexブラウザで利用可能なSave-Dataクライアントヒントリクエストヘッダーを使用すると、開発者はブラウザでデータ節約モードを有効にしたユーザーに、より軽量で高速なアプリケーションを提供できます。[ 46 ]
例えば:Save-Data: on
Sec-GPC(グローバルプライバシーコントロール)リクエストヘッダーは、ユーザーがウェブサイトやサービスが個人情報を第三者に販売または共有することに同意しているかどうかを示します。[ 47 ]
例えば:Sec-GPC: 1
このセクションでは、レスポンスで使用されるヘッダーフィールドを一覧表示します。
[RFC 8942、実験的] HTTPクライアントヒントのリクエスト。
例えば:Accept-CH: UA, Platform
[RFC 7480、永続]クロスオリジンリソース共有に参加できるWebサイトを指定する。[ 6 ]
例えば:Access-Control-Allow-Origin: *
[RFC 5789、永続] このサーバーがサポートするパッチ文書フォーマットを指定します。[ 48 ]
例えば:Accept-Patch: text/example;charset=utf-8
[RFC 9110、永続的] このサーバーがバイトサービングでサポートする部分コンテンツ範囲タイプ。
例えば:Accept-Ranges: bytes
[RFC 9111、永続的] オブジェクトがプロキシ キャッシュに存在していた時間(秒単位)。
例えば:Age: 12
[RFC 9110、永続的] 指定されたリソースの有効なメソッド。405メソッドが許可されていませんの場合に使用します。
例えば:Allow: GET, HEAD
[RFC 7838、永続] サーバーは「Alt-Svc」ヘッダー(代替サービスを意味する)を使用して、そのリソースが別のネットワークロケーション(ホストまたはポート)または別のプロトコルを使用してアクセス可能であることを示します。HTTP/2 を使用する場合、サーバーは代わりに ALTSVC フレームを送信する必要があります。[ 49 ]
例えば:Alt-Svc: http/1.1="http2.example.com:8001"; ma=7200
[RFC 9111、永続] サーバーからクライアントへのすべてのキャッシュメカニズムに対し、レスポンスをキャッシュできるかどうかを通知します。数値は秒単位です。
ウェブ サーバーが で応答する場合Cache-Control: no-cache、ウェブ ブラウザやその他のキャッシュ システム(中間プロキシ) は、発信元サーバーに最初に確認することなく (このプロセスは検証と呼ばれます)、後続のリクエストを満たすためにその応答を使用してはなりません。このヘッダー フィールドは HTTP/1.1 の一部であり、一部のキャッシュやブラウザでは無視されます。HTTP Expires/1.0 ヘッダー フィールドの値を応答時間より前の時間に設定することでシミュレートできます。 は、no-cacheブラウザやプロキシにコンテンツをキャッシュするかどうかを指示しているわけではないことに注意してください。 は、ブラウザやプロキシに、キャッシュ コンテンツを使用する前にサーバーで検証するように指示しています (これはIf-Modified-Since、If-Unmodified-Since、 、If-Match、 を介して行われますIf-None-Match)。no-cacheしたがって、 値を送信すると、ブラウザやプロキシは、キャッシュ コンテンツの「鮮度基準」のみに基づいてキャッシュ コンテンツを使用しないように指示されます。検証なしで古いコンテンツがユーザーに表示されるのを防ぐもう 1 つの一般的な方法は、 です。Cache-Control: max-age=0これは、ユーザー エージェントに、コンテンツが古く、使用する前に検証する必要があることを指示します。
この値は、no-storeブラウザにレスポンスをキャッシュしないように指示しますが、ブラウザはそれでもキャッシュすることができます。特に、HTTP/1.1 の定義では、履歴ストアとキャッシュが区別されています。ユーザーが前のページに戻ると、ブラウザは履歴ストアにディスクに保存されているページを表示する場合があります。これは仕様に準拠した正しい動作です。多くのユーザーエージェントは、プロトコルが HTTP か HTTPS かによって、履歴ストアまたはキャッシュからページを読み込む動作が異なります。
例えば:Cache-Control: max-age=3600
[RFC 9110、永続] 現在の接続の制御オプションとホップごとの応答フィールドのリスト。[ 9 ] HTTP/2 では使用してはならない。[ 10 ]
例えば:Connection: close
[RFC 2616, 4021, 6266, permanent] バイナリ形式の既知のMIMEタイプに対して「ファイルダウンロード」ダイアログボックスを表示するか、動的コンテンツのファイル名を提案する機会。特殊文字には引用符が必要です。[ 50 ]
例えば:Content-Disposition: attachment; filename="fname.ext"
[RFC 9110、永続] データに使用されるエンコーディングの種類。HTTP圧縮を参照してください。
例えば:Content-Encoding: gzip
[RFC 9110、永続] 添付コンテンツの対象となる読者の自然言語または複数の言語。[ 51 ]
例えば:Content-Language: da
[RFC 9110、永続] レスポンスボディの長さ(オクテット単位、8ビットバイト)。
例えば:Content-Length: 348
[RFC 9110、永続的] 返されたデータの代替場所。
例えば:Content-Location: /index.htm
[RFC 1544、1864、4021、廃止]レスポンスの内容のBase64エンコードされたバイナリMD5サム。 [ 12 ]
例えば:Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ==
[RFC 9110、永続的] この部分的なメッセージが完全な本文メッセージのどこに属するか。
例えば:Content-Range: bytes 21010-47021/47022
[RFC 9110、永続]このコンテンツのMIMEタイプ。
例えば:Content-Type: text/html; charset=utf-8
[RFC 9110、永続的] メッセージが送信された日時(RFC 9110で定義されている「HTTP-date」形式)。
例えば:Date: Tue, 15 Nov 1994 08:12:31 GMT
[RFC 3229、永続] レスポンスのデルタエンコーディングエンティティタグを指定します。[ 5 ]
例えば:Delta-Base: "abc"
[RFC 9110、永続的] リソースの特定のバージョンの識別子。多くの場合、メッセージダイジェスト。
例えば:ETag: "737060cd8c284d8af7ad3082f209582d"
[RFC 9111、永続的] レスポンスが古くなったとみなされる日時を指定します(RFC 9110 で定義されている「HTTP-date」形式)。
例えば:Expires: Thu, 01 Dec 1994 16:00:00 GMT
[RFC 3229、永続的] レスポンスに適用されるインスタンス操作。[ 5 ]
例えば:IM: feed
[RFC 9110、永続的] 要求されたオブジェクトの最終更新日(RFC 9110で定義されている「HTTP-date」形式)。
例えば:Last-Modified: Tue, 15 Nov 1994 12:45:26 GMT
[RFC 8288、永続的] 他のリソースとの型付き関係を表現するために使用され、関係の型はRFC 8288で定義されています。[ 52 ]
例えば:Link: </feed>; rel="alternate"
[RFC 9110、永続的]リダイレクト時、または新しいリソースが作成されたときに使用されます。
例えば:Location: http://www.w3.org/pub/WWW/People.html
例えば:Location: /pub/WWW/People.html
[RFC 2626、永続的] このフィールドは、の形式でP3PP3P:CP="your_compact_policy"ポリシーを設定することを目的としています。しかし、P3P は普及せず、[ 53 ]ほとんどのブラウザはそれを完全に実装したことがありません。多くの Web サイトがこのフィールドに偽のポリシー テキストを設定し、ブラウザを騙して P3P ポリシーが存在すると思わせ、サードパーティ Cookieの許可を与えています。
例えば:P3P: CP="This is not a P3P policy! See https://en.wikipedia.org/wiki/Special:CentralAutoLogin/P3P for more info."
[RFC 9111、永続的] リクエストとレスポンスのチェーンのあらゆる場所でさまざまな影響を与える可能性のある実装固有のフィールド。
例えば:Pragma: no-cache
[RFC 7240、永続的] サーバーがどの Prefer トークンを受け入れ、リクエストの処理に適用したかを示します。
例えば:Preference-Applied: return=representation
[RFC 9110、永続的] プロキシにアクセスするための認証を要求します。
例えば:Proxy-Authenticate: Basic
[RFC 7469、永続的] HTTP 公開鍵ピンニング、ウェブサイトの正規のTLS証明書のハッシュを通知します。[ 54 ]
例えば:Public-Key-Pins: max-age=2592000; pin-sha256="E9CZ9INDbd+2eRQozYqqbQ2yXLVKB9+xcprMF+44U1g=";
[RFC 9110、永続的] エンティティが一時的に利用できない場合、これはクライアントに後で再試行するように指示します。値は、指定された期間(秒単位)または HTTP 日付になります。[ 55 ]
例1:Retry-After: 120 例2:Retry-After: Fri, 07 Nov 2014 23:59:59 GMT
[RFC 9110、永続的] サーバーの名前。
例えば:Server: Apache/2.4.1 (Unix)
[RFC 6265、永続的] HTTP クッキー。
例えば:Set-Cookie: CookieName=CookieValue; Max-Age=3600; Version=1
[RFC 6797、永続] HTTPクライアントにHTTPS専用ポリシーをキャッシュする期間と、これがサブドメインに適用されるかどうかを通知するHSTSポリシー。
例えば:Strict-Transport-Security: max-age=16070400; includeSubDomains
[RFC 9110、永続的] Trailer の一般フィールド値は、指定されたヘッダーフィールドのセットが、チャンク転送コーディングでエンコードされたメッセージのトレーラーに存在することを示します。
例えば:Trailer: Max-Forwards
[RFC 9110、永続] エンティティを安全にユーザーに転送するために使用されるエンコード形式。現在定義されているメソッドは、chunked、compress、deflate、gzip、identity です。HTTP/2 では使用しないでください。[ 10 ]
例えば:Transfer-Encoding: chunked
[RFC 2295、永続的] トラッキングステータスヘッダー。DNT(追跡拒否)リクエストへの応答として送信することが推奨される値。可能な値:
例えば:Tk: ?
[RFC 9110、永続] クライアントに別のプロトコルへのアップグレードを要求します。HTTP/2 では使用しないでください。[ 10 ]
例えば:Upgrade: h2c, HTTPS/1.3, IRC/6.9, RTA/x11, websocket
[RFC 9110、永続] ダウンストリームプロキシに、将来のリクエストヘッダーを照合して、オリジンサーバーから新しいレスポンスを要求するのではなく、キャッシュされたレスポンスを使用できるかどうかを判断する方法を指示します。
例1:Vary: * 例2:Vary: Accept-Language
[RFC 9110、永続] レスポンスが送信されたプロキシをクライアントに通知します。
例えば:Via: 1.0 fred, 1.1 example.com (Apache/1.1)
[RFC 7234、RFC 9111、廃止] エンティティ本体に関する潜在的な問題に関する一般的な警告。[ 18 ]
例えば:Warning: 199 Miscellaneous warning
[RFC 9110、永続的] 要求されたエンティティにアクセスするために使用すべき認証方式を示します。
例えば:WWW-Authenticate: Basic
[RFC 7034、廃止]クリックジャッキング対策:deny- フレーム内でのレンダリングなし、sameorigin- 原点が一致しない場合のレンダリングなし、allow-from- 指定された場所からのレンダリングを許可、allowall- 非標準、任意の場所からのレンダリングを許可。[ 56 ]
例えば:X-Frame-Options: deny
例えば: X-WebKit-CSP: default-src 'self'
例えば: Expect-CT: max-age=604800, enforce, report-uri="https://example.example/report"
ネットワーク要求のログ記録を設定するために使用されます。[ 59 ]
例えば: NEL:{"report_to":"name_of_reporting_group","max_age":12345,"include_subdomains":false,"success_fraction":0.0,"failure_fraction":1.0}
ブラウザのさまざまな機能やAPIを許可または無効にするため。[ 60 ]
例えば: Permissions-Policy: fullscreen=(), camera=(), microphone=(), geolocation=(), interest-cohort=()[61]
指定された秒数後(つまり即時)または新しいリソースが作成されたときに、ブラウザにページを更新するか、別の URL にリダイレクトするように指示します。1995年に Netscape によって導入され、それ以来、ほとんどの Web ブラウザでサポートされている事実上の標準となっています。最終的に 2017 年に HTML Living Standard で標準化されました。[ 62 ]0
例えば: Refresh: 5; url=http://www.w3.org/pub/WWW/People.html
ユーザーエージェントに、オリジンのレポートエンドポイントを保存するように指示します。[ 63 ]
例えば: Report-To:{"group":"csp-endpoint","max_age":10886400,"endpoints":[{"url":"https-url-of-site-which-collects-reports"}]}
HTTPレスポンスの状態を指定するCGIヘッダーフィールド。通常のHTTPレスポンスでは、代わりにRFC 9110で定義されている別の「Status-Line」が使用されます。 [ 64 ]
例えば: Status: 200 OK
レスポンスヘッダーは、リソースタイミングAPITiming-Allow-Originの機能を介して取得された属性の値を見ることが許可されているオリジンを指定します。そうでない場合、クロスオリジン制限により、これらの値はゼロとして報告されます。[ 65 ]
例えば: Timing-Allow-Origin: *Timing-Allow-Origin: <origin>[, <origin>]*
音声または動画の再生時間を秒単位で指定します。現在のブラウザではサポートされていません。このヘッダーはGeckoブラウザでのみサポートされていましたが、2015年にサポートが削除されました。[ 66 ] [ 67 ]
例えば: X-Content-Duration: 42.666
唯一定義されている値「nosniff」は、Internet Explorer が宣言されたコンテンツ タイプとは異なる MIME スニッフィングで応答を解析するのを防ぎます。これは、拡張機能をダウンロードする際のGoogle Chromeにも適用されます。[ 68 ] [ 69 ]
例えば: X-Content-Type-Options: nosniff[ 70 ]
Webアプリケーションをサポートするテクノロジー(例:ASP.NET、PHPX-Runtime 、JBoss)を指定します(バージョン詳細は、多くの場合、、、X-VersionまたはにありますX-AspNet-Version)。[ stackoverflow1 1 ]
例えば: X-Powered-By: PHP/5.4.0
特定のリダイレクトを担当するコンポーネントを指定します。[ 71 ]
例えば: X-Redirect-By: WordPressX-Redirect-By: Polylang
クライアントとサーバー間のHTTPリクエストを関連付けます。[ stackoverflow2 1 ]
例えば: X-Request-ID: f058ebd6-02f7-4d3f-942e-904344e8cde5
コンテンツを表示するために使用する推奨レンダリングエンジン(多くの場合、下位互換モード)を推奨します。また、Internet Explorer でChrome フレームをIE=edgeアクティブにするためにも使用されます。HTML 標準では、値のみが定義されています。[ 72 ] [ 73 ]
例えば:
X-UA-Compatible: IE=edgeX-UA-Compatible: IE=EmulateIE7X-UA-Compatible: Chrome=1
クロスサイトスクリプティング(XSS)フィルタ[ 74 ]
例えば: X-XSS-Protection: 1; mode=block
X-UA-Compatible 状態の http-equiv 属性を持つメタ要素の場合、content 属性の値は、文字列 と ASCII の大文字小文字を区別しない一致である必要があります
。
"IE=edge"本記事は、この編集時点において、Stack Exchange のStefan Kögl氏が執筆した「X-REQUEST-ID HTTP ヘッダーとは何か?」という記事の内容を使用しています。この記事は、 Creative Commons Attribution-ShareAlike 3.0 Unported Licenseの下での再利用は許可されていますが、GFDLの下では許可されていません。関連するすべての条件を遵守する必要があります。
本記事は、この編集時点において、Stack Exchange のAdrian Grigore氏が執筆した「Why does ASP.NET framework add the 'X-Powered-By:ASP.NET' HTTP Header in responses?」の内容を使用しています。このコンテンツは、 Creative Commons Attribution-ShareAlike 3.0 Unported Licenseの下での再利用が許可されていますが、GFDLの下では許可されていません。関連するすべての条件を遵守する必要があります。