PHP ヘッダー キャッシュ --- ヘッダー パラメーターの説明
1. Accept: WEB サーバーにどのメディア タイプを受け入れるかを伝えます。*/* は任意のタイプを意味し、type/* はこのタイプ (type/sub-type) の下のすべてのサブタイプを意味します。
2. Accept-Charset:?? ブラウザは受け取る文字セットを宣言します
Accept-Encoding: ブラウザは受け取るエンコード方式を宣言します。通常は、圧縮方式、圧縮をサポートするかどうか、サポートする圧縮方式 (gzip、deflate) を指定します
Accept-Language:: ブラウザは受け入れる言語を宣言します
言語と文字セットの違い: 中国語は言語であり、中国語には big5、gb2312、gbk などの複数の文字セットがあります。
3. Accept-Ranges: WEB サーバーは、エンティティの 1 つの一部 (ファイルの一部など) を取得するリクエストを受け入れるかどうかを示します。
バイト: 受け入れを示し、なし: 受け入れられないことを示します。
4. 経過時間: プロキシ サーバーが独自のキャッシュされたエンティティを使用してリクエストに応答するとき、このヘッダーはエンティティが生成されてからの経過時間を示すために使用されます。
5. 認可: クライアントは WEB サーバーから WWW-Authenticate 応答を受信すると、このヘッダーを使用して自身の認証情報を WEB サーバーに応答します。
6. キャッシュ制御: リクエスト: キャッシュなし (エンティティをキャッシュせず、すぐに WEB サーバーから取得するようにリクエストします)
max-age: (Age 値が max-age 値未満で、期限切れのオブジェクトがないオブジェクトのみを受け入れます)
max-stale: (過去のオブジェクトを受け入れることができますが、有効期限は max-stale 値未満である必要があります)
min-fresh: (最新の有効期間が現在の Age 値と min-fresh 値の合計より大きいキャッシュ オブジェクトを受け入れます)
応答: パブリック (キャッシュされたコンテンツを使用して任意のユーザーに応答できます)
プライベート (以前にリクエストしたユーザーに対してのみ、キャッシュされたコンテンツで応答できます)
no-cache (キャッシュ可能ですが、WEB サーバーで有効性を検証した後にのみクライアントに返すことができます)
max-age: (この応答に含まれるオブジェクトの有効期限)
ALL: ストアなし (キャッシュは許可されません)
7. 接続: 要求: 閉じる (この要求への応答が完了した後に切断し、この接続に対する後続の要求を待たないよう、WEB サーバーまたはプロキシ サーバーに指示します)。
keepalive (このリクエストへの応答が完了した後も接続を維持し、この接続に対する後続のリクエストを待つように WEB サーバーまたはプロキシ サーバーに指示します)。
応答: close (接続が閉じられました)。
keepalive (接続は維持され、この接続に対する後続の要求を待機します)。
Keep-Alive: ブラウザがキープアライブ接続を要求した場合、このヘッダーは、WEB サーバーが接続を維持することが予想される時間 (秒単位) を示します。
例: キープアライブ: 300
8. コンテンツ エンコーディング: WEB サーバーは、応答内のオブジェクトを圧縮するために使用する圧縮方法 (gzip、deflate) を示します。
例: Content-Encoding: gzip??????????????????
コンテンツ言語: WEB サーバーは、応答するオブジェクトの言語をブラウザーに伝えます。
Content-Length: WEB サーバーは、ブラウザーに応答するオブジェクトの長さを伝えます。
例: Content-Length: 26012
Content-Range: WEB サーバーは、応答に含まれる部分オブジェクトがオブジェクト全体のどの部分であるかを示します。
例: Content-Range: バイト 21010-47021/47022
Content-Type:??? WEB サーバーは、ブラウザーに応答するオブジェクトのタイプを伝えます。
例: Content-Type: application/xml
9. ETag: HTML ファイルなどのオブジェクトのフラグ値です。
したがって、ETag の役割は Last-Modified の役割と似ており、主にオブジェクトが変更されたかどうかを判断するために WEB サーバーによって使用されます。
たとえば、前回 HTML ファイルをリクエストしたときに、その ETag を取得しました。今回このファイルを再度リクエストすると、ブラウザは以前に取得した ETag 値を
に送信します。
WEB サーバーにアクセスすると、WEB サーバーはこの ETag をファイルの現在の ETag と比較し、ファイルが変更されたかどうかを確認します。
10. 有効期限切れ: WEB サーバーは、エンティティの有効期限が切れる時期を示します。有効期限が切れたオブジェクトは、WEB サーバーで有効性が確認された後、顧客のリクエストに応答するためにのみ使用できます。
HTTP/1.0のヘッダーです。
例: 有効期限: 2009 年 5 月 23 日土曜日 10:02:12 GMT
11. ホスト: クライアントは、アクセスする WEB サーバーのドメイン名/IP アドレスとポート番号を指定します。
例: ホスト: rss.ifeng.com
12. If-Match: オブジェクトの ETag が変更されていない場合、つまりオブジェクトが変更されていない場合、要求されたアクションが実行されます。
If-None-Match: オブジェクトの ETag が変更された場合、それは実際にはオブジェクトも変更されたことを意味し、要求されたアクションが実行されます。
13. If-Modified-Since: リクエストされたオブジェクトがヘッダーで指定された時間後に変更された場合、リクエストされたアクション (オブジェクトを返すなど) が実行されます。それ以外の場合は、コード 304 が返されます。オブジェクトが変更されていないことをブラウザで確認します。
例: If-Modified-From: Thu, 10 Apr 2008 09:14:42 GMT
If-Unmodified-Since: ヘッダーで指定された時間が経過しても要求されたオブジェクトが変更されていない場合、要求されたアクション (オブジェクトを返すなど) が実行されます。
14. If-Range: ブラウザは WEB サーバーに、要求したオブジェクトが変更されていない場合は不足している部分を提供し、オブジェクトが変更されている場合はオブジェクト全体を提供するように指示します。
ブラウザは、要求されたオブジェクトの ETag または既知の最終変更時刻を WEB サーバーに送信して、オブジェクトが変更されたかどうかを判断させます。
常に Range ヘッダーとともに使用されます。
15. Last-Modified: WEB サーバーは、ファイルの最終変更時刻、動的ページの最終生成時刻など、オブジェクトの最終変更時刻を考慮します。
例: Last-Modified: 火曜日, 06 May 2008 02:42:43 GMT
16. 場所: WEB サーバーは、アクセスしようとしているオブジェクトが別の場所に移動されたため、ヘッダーで指定された場所から取得する必要があることをブラウザーに伝えます。
例: 場所:
17. Pramga: 主に、Cache-Control: no-cache と同等の Pramga: no-cache を使用します。
例: プラグマ: no-cache
18. プロキシ認証: プロキシ サーバーはブラウザに応答し、プロキシ認証情報の提供を要求します。
プロキシ認証: ブラウザはプロキシ サーバーの認証リクエストに応答し、独自の ID 情報を提供します。
19. 範囲: ブラウザ (マルチスレッド ダウンロード中の Flashget など) は、オブジェクトのどの部分を取得したいかを WEB サーバーに伝えます。
例: 範囲: bytes=1173546-
20. リファラー: ブラウザは、現在のリクエストでどの Web ページ/URL を取得/クリックしたかを WEB サーバーに示します。
例: リファラー: http://www.ifeng.com/
21. サーバー: WEB サーバーは、そのソフトウェアとそのバージョンを示します。
例: サーバー:Apache/2.0.61 (Unix)
22. ユーザーエージェント: ブラウザーはその ID (どのブラウザーであるか) を示します。
例: ユーザーエージェント: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14
23. Transfer-Encoding: WEB サーバーは、チャンク化されているかどうかなど、応答メッセージ本文 (メッセージ本文内のオブジェクトではありません) をエンコードする方法を示します。
例: Transfer-Encoding: chunked
24. 変更: WEB サーバーは、このヘッダーの内容を使用して、この応答によって返されたオブジェクトを後続の要求に応答するために使用できる条件をキャッシュ サーバーに伝えます。
ソース WEB サーバーが最初の要求メッセージを受信した場合、応答メッセージのヘッダーは次のようになります: Content-Encoding: gzip Vary: Content-Encoding
次に、キャッシュ サーバーは後続のリクエスト メッセージのヘッダーを分析し、その Accept-Encoding が前の応答の Vary ヘッダー値と一致しているかどうか、つまり
を使用するかどうかを確認します。
同じコンテンツ エンコード方式。これにより、キャッシュ サーバーが、解凍機能のないブラウザに応答するために、独自のキャッシュ内の圧縮エンティティを使用することができなくなります。
例: 変更: Accept-Encoding
25. Via: クライアントから OCS への応答、またはその逆が通過するプロキシ サーバーと、要求の送信に使用されるプロトコル (およびバージョン) をリストします。
クライアントのリクエストが最初のプロキシ サーバーに到達すると、サーバーは送信するリクエストに Via ヘッダーを追加し、次のプロキシ サーバー
に独自の関連情報を入力します。
最初のプロキシ サーバーからリクエストを受信すると、前のプロキシ サーバーのリクエストの Via ヘッダーを自身のリクエストにコピーし、独自の関連情報を最後に追加します
同様に、OCS は最後のプロキシ サーバーからリクエストを受信すると、Via ヘッダーをチェックしてリクエストがたどったルートを確認します。