PHPコードでブラウザのキャッシュを無効にする方法

PHPz
リリース: 2023-04-05 15:48:01
オリジナル
743 人が閲覧しました

Web ベースのアプリケーション開発では、キャッシュはパフォーマンスを向上させる重要な部分です。キャッシュにより、ページの読み込みが高速化され、サーバーの負担が軽減され、ユーザー エクスペリエンスが向上します。ただし、場合によっては、ユーザーが最新のデータや情報を確実に取得できるように、コード内でブラウザーのキャッシュを無効にする必要があります。この記事では、PHP コードでブラウザのキャッシュを無効にする方法を紹介します。

PHP コードでは、ブラウザのキャッシュを無効にする 2 つの方法があります: HTTP ヘッダーとメタ タグです。

方法 1: HTTP ヘッダー

HTTP 応答ヘッダーは、Web ページの種類、応答ステータス コード、エンコード方法、その他の情報を含む、サーバーからブラウザーに送信されるメタデータです。 HTTP 応答ヘッダーを設定することで、ブラウザがページをキャッシュする方法を制御できます。一般的なキャッシュ コントロールの応答ヘッダーの一部を次に示します。

  1. Cache-Control

Cache-Control は、HTTP/1.1 によって導入されたヘッダーであり、よりきめ細かいキャッシュを提供します。コントロール。 Cache-Control 値を no-cache に設定すると、応答コンテンツをキャッシュせず、毎回サーバーから最新のコンテンツを取得するようにブラウザに指示できます。例:

header('Cache-Control: no-cache');
ログイン後にコピー
  1. Pragma

プラグマ ヘッダーは、ブラウザーのキャッシュを制御するために HTTP/1.0 によって定義されたヘッダーです。 Pragma の値は no-cache にすることができ、ブラウザーのキャッシュが使用されないことを示します。例:

header('Pragma: no-cache');
ログイン後にコピー
  1. Expires

Expires ヘッダーは、ブラウザに有効期限を通知するために HTTP/1.0 によって定義されたヘッダーです。通常、Expires は、ブラウザがキャッシュされたコンテンツを使用するまでの将来の時点を指定します。ただし、Expires ヘッダーの時刻はサーバーによって生成されるため、時差や不正確性が生じる可能性があります。したがって、HTTP/1.1 では、Expires ヘッダーに代わって Cache-Control ヘッダーが導入されました。 Expires ヘッダーを使用する場合は、その値を 0 に設定して、即時有効期限を示すことができます。例:

header('Expires: 0');
ログイン後にコピー

方法 2: メタ タグ

HTTP 応答ヘッダーにキャッシュ制御情報を設定することに加えて、ページのメタ タグにキャッシュ ポリシーを定義することもできます。メタ タグは、ドキュメントに関するメタデータ情報を提供するために使用される HTML タグです。一般的なメタ タグの一部を次に示します。

  1. no-cache

no-cache は http-equiv 属性を持つメタ タグで、ブラウザにキャッシュしないように指示できます。ページのコンテンツ。例:

<meta http-equiv="Cache-Control" content="no-cache">
ログイン後にコピー
  1. Pragma

Pragma は http-equiv 属性のメタ タグでもあり、ページ コンテンツをキャッシュしないようブラウザに指示できます。例:

<meta http-equiv="Pragma" content="no-cache">
ログイン後にコピー
  1. Expires

メタ タグの Expires ヘッダーの有効期限を設定する一般的な方法です。例:

<meta http-equiv="Expires" content="0">
ログイン後にコピー

要約

PHP コードでは、特にデータや情報が頻繁に更新される場合、ブラウザーのキャッシュを無効にすることが非常に重要です。 HTTP ヘッダーまたはメタ タグを使用してキャッシュ ポリシーを制御すると、ユーザーが最新のコンテンツを確実に取得し、ユーザー エクスペリエンスを向上させることができます。この記事ではブラウザのキャッシュを無効にする 2 つの方法を紹介しますので、状況に応じて適切な方法を選択することをお勧めします。

以上がPHPコードでブラウザのキャッシュを無効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート