ホームページ >バックエンド開発 >PHPの問題 >PHPコードでブラウザのキャッシュを無効にする方法

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

PHPz
PHPzオリジナル
2023-04-05 14:37:17795ブラウズ

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。