フロントエンドブラウザキャッシュの使用方法
以前にブラウザのキャッシュについて紹介しましたが、HTML のオフライン キャッシュについても紹介しましたが、あまり話しすぎると混乱しやすいので、今日はこれらのキャッシュの違いとキャッシュの使用方法について説明します。
200 メモリキャッシュからはサーバーにアクセスせず、直接キャッシュを読み取り、メモリからキャッシュを読み取ります。このときのデータはメモリ上にキャッシュされ、プロセスが終了すると、つまりブラウザを閉じるとデータは存在しなくなります。ただし、この方法では、サーバーにアクセスせずに、ディスク キャッシュから派生リソース
200 をキャッシュすることしかできません。また、プロセスが強制終了された場合でも、データはまだ存在します。このメソッドは派生リソースのみをキャッシュできます。
304 Not Modified はサーバーにアクセスし、サーバーがこの ステータス コード を返します。次に、キャッシュからデータを読み取ります。
第 3 レベルのキャッシュの原理
まずメモリを確認し、メモリがある場合は直接ロードします
メモリがない場合は、ハード ディスクを選択して取得します。ハードディスクがない場合は、ネットワーク リクエストを実行します
ロードします。次のように、リソースがハードディスクとメモリにキャッシュされます
写真
にアクセスします。ブラウザを終了します。 -> 200 (ディスク キャッシュから) -> 200 (メモリ キャッシュから)
アプリケーション キャッシュは、上記のキャッシュとは少し異なります。インターネットに接続していなくても、ハードディスクから読み込むことができます。インターネットに接続していなくても閲覧できます。 ブラウザのキャッシュを設定します304 キャッシュをネゴシエートするか、一度サーバーと通信する必要がありますか? サーバー通信を遮断したい場合は、ブラウザにローカル キャッシュの使用を強制する必要があります (キャッシュ制御/期限切れ)。一般に、それを設定するにはいくつかの方法があります: ブラウザキャッシュ。
1. HTTP METAによる有効期限とキャッシュ制御の設定
<meta http-equiv="Cache-Control" content="max-age=7200" /> <meta http-equiv="Expires" content="Sun Oct 15 2017 20:39:53 GMT+0800 (CST)" />
このように書くと、Webページに対してのみ有効で、Webページ内の画像やその他のリクエストには無効です。
2. Apache サーバー構成の画像、CSS、JS、フラッシュ キャッシュ
このテクノロジーは主にサーバー構成を通じて実装されます。Apache サーバーを使用する場合は、mod_expires モジュールを使用して実装できます。
mod_expires モジュールをコンパイルします。
Cd /root/httpd-2.2.3/modules/metadata/usr/local/apache/bin/apxs -i -a -c mod_expires.c //编译
<IfModule mod_expires.c>ExpiresActive on ExpiresDefault "access plus 1 month" ExpiresByType text/html "access plus 1 months" ExpiresByType text/css "access plus 1 months" ExpiresByType image/gif "access plus 1 months" ExpiresByType image/jpeg "access plus 1 months" ExpiresByType image/jpg "access plus 1 months" ExpiresByType image/png "access plus 1 months" EXpiresByType application/x-shockwave-flash "access plus 1 months" EXpiresByType application/x-javascript "access plus 1 months" #ExpiresByType video/x-flv "access plus 1 months"</IfModule>
<?php header("Cache-Control: public"); header("Pragma: cache"); $offset = 30*60*60*24; // cache 1 month $ExpStr = "Expires: ".gmdate("D, d M Y H:i:s", time() + $offset)." GMT"; header($ExpStr);?>
$seconds_to_cache = 3600;$ts = gmdate("D, d M Y H:i:s", time() + $seconds_to_cache) . " GMT";header("Expires: $ts"); header("Pragma: cache");header("Cache-Control: max-age=$seconds_to_cache");
summary
アルゴリズムを使用してファイルの概要情報を見つけることができます。この概要情報はファイルの内容と 1 対 1 に対応しています。以下に示すように: これで問題は解決します。 質問 3: また新たな問題が発生しました。ファイルを公開するときはどうすればよいですか? 2. 最初にリソースをデプロイし、次にページをデプロイします。デプロイ時間間隔内で、古いバージョンのリソースのローカル キャッシュを持つユーザーが Web サイトにアクセスします。要求されたページは古いバージョンであるため、リソースreference
は変更されていません。ブラウザはローカル キャッシュを直接使用します。この場合、ページは正常に表示されますが、ローカル キャッシュを持たないユーザーまたはキャッシュの有効期限が切れたユーザーが Web サイトにアクセスすると、古いバージョンのページが新しいバージョンのリソースをロードし、ページ実行エラーが発生します。 , ページがデプロイされると、この部分が表示されます。ユーザーが再度ページにアクセスすると、通常の状態に戻ります。 さて、上記の分析から言いたいことは、誰も最初にデプロイすることはできないということです。これにより、展開プロセス中にページが混乱する可能性があります。したがって、トラフィックが少ないプロジェクトの場合、研究開発の学生は、夜中にこっそりオンラインにアクセスして、最初に静的
リソースをロードしてからページをデプロイすることで、問題が少なくなるように見えます。 この問題は、公開されたリソースをカバーするためにリリースされるリソースを使用することを伴う、リソースのオーバーレイ リリースに起因します。これを解決するのは簡単です。つまり、非カバレッジ パブリッシングを実装することです。キャッシュに関しては非常に多くの側面があります。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事に注目してください。
関連書籍:
HTML でデジタル フォーカス チャートのカルーセル コードを実装する方法HTML のテキストの最後の行が不完全に表示される場合の対処方法
キャンバスを使用してパーティクルファウンテンアニメーション効果を作成する方法
以上がフロントエンドブラウザキャッシュの使用方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Safariでカスタムスタイルシートを使用することについてのディスカッション今日は、Safariブラウザ向けのカスタムスタイルシートのアプリケーションに関する質問について説明します。フロントエンド初心者...

CSSでサイズ変更シンボルをカスタマイズする方法は、背景色で統一されています。毎日の開発では、調整など、ユーザーインターフェイスの詳細をカスタマイズする必要がある状況に遭遇することがよくあります...

最近、Webページにローカルにインストールされたフォントファイルを使用して、インターネットから無料のフォントをダウンロードし、システムに正常にインストールしました。今...

JavaScriptまたはCSSを使用して、ブラウザの印刷設定のページの上部と端を制御する方法。ブラウザの印刷設定には、ディスプレイが...

Webページにローカルにインストールされたフォントファイルを使用する方法Webページ開発でこの状況に遭遇しましたか:コンピューターにフォントをインストールしました...

なぜマイナスマージンが場合によっては有効にならないのですか?プログラミング中、CSSの負のマージン(負...

CSSを使用してレスポンシブレイアウトを実装して、Webデザインのさまざまな画面サイズの下でレイアウトの変更を実装する場合、CSS ...

フレックスレイアウトとソリューションの下でのテキストの過度の省略によるコンテナの開口部の問題が使用されます...
