HTML ページ内の js および css ファイルのキャッシュを自動的にクリーンアップします (バージョン番号を自動的に追加します)

HTML ページ内の js および css ファイルのキャッシュを自動的にクリーンアップします (バージョン番号を自動的に追加します)

Web プロジェクトの開発プロセスでは、CSS ファイルや JS ファイルを参照することがよくあります。ファイルを更新した後、キャッシュの問題 (コードは変更されているが、ブラウザーでアクセスしたときに変更されていない) が発生することがよくあります。この場合、通常、次の 2 つの解決策を使用します。

1.ブラウザのキャッシュを手動でクリアする

2. バージョン番号を追加します(layout.css?v=1など)

個人的には、ブラウザのキャッシュをクリアするにはブラウザが応答するのを待つ必要があるため、方法 2 の方が速いと思います。しかし、バージョン番号を毎回変更するのは面倒なので、バージョン番号を自動的に追加する方法を見つける必要があります。

収集した方法は次のとおりです。

方法1: jsを使用してHTMLにバージョン番号を自動的に追加できます

 <script type="text/javascript">  
document.write("<link rel='stylesheet' type='text/css' href='/css/layout.css?v="+new Date().getTime()+"'>");   
</スクリプト>

方法 2: jsp ページの場合は、Java コードを使用してタイムスタンプを生成できます (jsp ページの場合は方法 1 も使用できますが、この方法の方が便利です)

<link rel="スタイルシート" type="text/css" href="/css/layout.css?v=<%=System.currentTimeMillis() %>">

方法3: node.jsによる自動構成など、他の方法を使用してバージョン番号を追加する

追記: キャッシュをクリアする目的は、ページの更新状況を適時に確認することです。ページをオンラインにする場合 (つまり、正式な環境に展開し、変更を加えない場合)、キャッシュされたページへのアクセスが高速になるため、バージョン番号を固定することをお勧めします。更新が必要な場合は、固定バージョン番号を交換してください。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  MySQLデータベースのデータテーブルに関する詳細な基本操作

>>:  after疑似要素を使用して中空の三角矢印とXアイコンを実装する例

推薦する

Centos7 Zabbix3.4 メールアラーム設定(メール内容がxx.bin添付ファイルになる問題の解決)

目次1. 監視Linuxホストを追加する2. メールボックスを設定する1. 監視Linuxホストを追...

Vue スキャフォールディングでのレンダリングを理解する

Vue スキャフォールディングでは、エントリ ファイル main.js の新しい Vue コードに、...

Docker ケース分析: Redis サービスの構築

目次1 マウントディレクトリとファイルを作成する2 Redisイメージを取得する3 コンテナを作成し...

MySQLデータベースのマスタースレーブレプリケーションの長い遅延に対する解決策

序文MySQL マスター スレーブ レプリケーションの遅延は、業界では長年の問題となっています。遅延...

Tomcatのクラスロードメカニズムのプロセスとソースコード分析

目次序文1. Tomcat クラスローダー構造図: 2. Tomcat のクラスロードプロセスの説明...

Vue3+TypeScriptは再帰メニューコンポーネントの完全な例を実装します

目次序文必要成し遂げる最初のレンダリングメニュー項目をクリックしますスタイルの区別デフォルトのハイラ...

Dockerfile を使用して Docker イメージをカスタマイズする方法

Dockerfile を使用したイメージのカスタマイズイメージのカスタマイズとは、実際には各レイヤー...

CSS でよく発生する問題の整理 (ロゴのハッキング/コンテナの固定/画像の垂直方向の中央揃え)

1. IEブラウザモードハックロゴ1. CSSハックロゴコードをコピーコードは次のとおりです。 ie...

レスポンシブデザインについて知っておくべきこと

レスポンシブデザインとは、ウェブサイトの開発プロセス中に、ユーザーの操作やデバイス環境に応じて対応す...

データベースのデフォルトパスを変更した後にmysqlが起動できない問題の解決策

序文mysql がデフォルトのデータベース パスを変更したため、サービスを開始できませんでした。ログ...

Linuxでpyファイルを直接実行する方法

1. まずファイルを作成します(ファイルを配置するディレクトリにcdします) myTest.py を...

JavaScript における var と let の違い

目次1. スコープはさまざまな方法で表現されます2. 変動昇進と非昇進の違い3. 一時的なデッドゾー...

CSSの2つの特別な値は、カスケードの継承と初期メソッドを制御するために使用されます。

カスケードを制御するために CSS の任意のプロパティに割り当てることができる特別な値が 2 つあり...

MySQLでのカスタムパラメータの使用に関する詳細な説明

MySQL 変数には、システム変数とシステム変数が含まれます。今回の学習課題はユーザー定義変数です。...

TypeScript におけるジェネリックケースの詳細な説明

ジェネリックの定義 // 要件 1: ジェネリックは指定されていないデータ型をサポートできるため、渡...