この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 11711|答える: 0

[ウェブサイト O&M] ウェブサイトパフォーマンス最適化:キャッシュ制御設定の詳細な説明

[リンクをコピー]
掲載地 2015/09/07 19:30:51 | | | |


HTTPヘッダーの期限切れとキャッシュ制御


1. コンセプト

キャッシュ制御はHTTPキャッシュの制御に使われます(HTTP/1.0では部分的に実装されておらず、Pragmaのみで実装されています:キャッシュなしが実装されています)

パケット内のフォーマット:

Cache-Control: cache-directive

cache-directiveは以下の通りです:

リクエスト:
| 「キャッシュなし」
| 「ノーストア」
| 「最大年齢」 「=」デルタ秒
| 「max-stale」[ "=" デルタ秒 ]
| 「min-fresh」 「=」デルタ秒
| 「ノートランスフォーム」
| 「もしキャッシュされた場合のみ」
| 「キャッシュ拡張」


回答:
| 「パブリック」
| 「プライベート」 [ "=" <"> フィールド名 <"> ]
| 「no-cache」 [ "=" <" > フィールド名 <"> ]
| 「ノーストア」
| 「ノートランスフォーム」
| 「再検証必須」
| 「プロキシ再検証」
| 「最大年齢」 「=」デルタ秒
| 「S-maxage」 「=」デルタ秒
| 「キャッシュ拡張」

説明の一部:
キャッシュ可能か非かに分けて
公開は応答が任意のキャッシュ領域でキャッシュ可能であることを示します。
privateは、単一のユーザーの応答メッセージの全部または一部が共有キャッシュで処理できないことを示します。 これにより、サーバーはユーザーが
部分的な応答メッセージで、他のユーザーからのリクエストには有効ではありません。
no-cacheは、リクエストまたはレスポンスメッセージをキャッシュできないことを示します(HTTP/1.0はPragmaのno-cacheに置き換えられています)
キャッシュできるものによって
ノーストアは重要な情報が意図せずに公開されるのを防ぐために使われます。 リクエストメッセージを送信すると、リクエストメッセージとレスポンスメッセージはキャッシュされません。
キャッシュによるタイムアウト
max ageは、クライアントが指定された時間(秒単位)を超えない応答を受け取れることを意味します。
min-freshは、クライアントが現在の応答時間と指定された時間より短い応答時間で応答を受け取れることを示します。
max-staleは、クライアントがタイムアウト期間を超えて応答メッセージを受け取れることを示します。 最大期限メッセージの値を指定すれば、クライアントは
指定された残業期間の値を超える応答メッセージを受信します。
期限切れは存在期間を表し、クライアントがこの期間前に確認(リクエスト)を行わないことを可能にし、これは最大年齢に相当します
効果。 しかし同時に存在する場合は、キャッシュコントロールの最大年齢によって上書きされます。
形式:
Expires = "Expires" ": HTTP-date
例えば
Expires: Thu, 01 Dec 1994 16:00:00 GMT (必须是GMT格式)

2. 適用
期限切れの設定とキャッシュ制御はHTTP経由のMETAで制御します
<meta http-equiv="Cache-Control" content="max-age=7200" />
<meta http-equiv="Expires" content="2009年7月20日月曜日 23:00:00 GMT" />
上記の設定はあくまで例であり、実際にどれかを使うことができます。 このように書くと、ウェブページ上でのみ有効で、画像やウェブページの他のリクエストには適用できず、キャッシュも発生しません。
こうすることでクライアントはより多くのリクエストを受け取り、単に「直後修正」ステータスを確認するだけですが、リクエスト数は確実に閲覧速度に影響します。
ファイルにキャッシュを追加したい場合は、Apacheのmod_expireモジュールを使えます。これは次のように書かれています
<もしモジュールmod_expires.c>
有効期限有効
期限切れデフォルト「アクセスプラス1日」
</IfModule>
ExpiresActiveがOnに設定されているのを覚えていますが、最初はオンにしていませんでした。そして、どれだけYSlowでもキャッシュの仕組みが見つからないようです。 このように追加すると、すべてがデフォルトになります。
個々のMIMEタイプをターゲットにしたい場合、以下のことができます:
期限切れByType画像/GIF「アクセスプラス5時間3分」
Apacheモジュールmod_expiresを参照してください
さらに、ブラウザでリフレッシュをクリックすると、クライアントから送信されたリクエストはすべてmax-age=0となり、リクエストが検証されサーバーに送信されたことを示します
キャッシュを確認してからキャッシュを更新すると、通常は304 Not Modifiedが表示され、変更はありません。






先の:パートタイムの仕事を見つけて追加収入を得る 優れた待遇と現金支払い、1日300ドル以上のパートタイム労働者を採用
次に:例えばLinqのファジークエリからSQLへ
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com