0

httpヘッダーを使用して、JavaScriptとページの詳細をブラウザのキャッシュに保存する必要があります。

誰かが私がこれを手に入れるのを手伝ってもらえますか?

どうもありがとう

4

3 に答える 3

2

HTMLメタを使用できます:

<meta http-equiv="Cache-control" content="public">

また

PHP ヘッダー:

header("Cache-Control: public"); // HTTP/1.1
header("Expires: Tue, 08 Oct 2013 00:00:00 GMT"); // Date in the future

出典:[PHPマニュアル]

于 2012-10-08T10:53:50.110 に答える
0

ヘッダーに有効期限を設定するだけではどうですか -

header("Cache-Control: public");
header("Expires: Tue, 08 Oct 2013 00:00:00 GMT"); // Date in the future

最新のブラウザは、リソースのキャッシングに優れていることに注意してください。通常、これらのメソッドはリソースを強制的にリロードするために使用されます。ブラウザのキャッシュを防ぐため。

于 2012-10-08T10:53:42.823 に答える
0

正確に何をキャッシュしたいのかについて混乱があると思います。ここでは 2 つの項目が参照されています -

  1. すべての HTML 要素と外部ファイルへの参照を含むページ自体。
  2. HTML ドキュメントによって参照される JavaScript ファイル。

最初のアイテム (ページ) をキャッシュするには、PHP でヘッダーを設定して、ページの HTML コンテンツをキャッシュする必要があります。

header("Cache-Control: public");
header("Expires: Tue, 08 Oct 2013 00:00:00 GMT"); // Date in the future

これにより、ページのコンテンツがキャッシュされますが、ページが参照するファイルは必ずしもキャッシュされるわけではありません。たとえば、HTML ファイルに次のコードがあるとします。

<script src="http://domain/some/js/file.js" type="javascript" ></script>

次に、そのテキストはキャッシュになりますが、file.js. これらの外部ファイルにキャッシュを手動で設定するには、PHP を使用してそれらを提供し、ヘッダーを手動で設定する必要があります。あなたはこれに似た何かをしたいと思うでしょう -

<script src="another_file.php" type="javascript" ></script>

ここでanother_file.php、JavaScript ファイルをロードし、適切なヘッダーを付けて「エコー」します。

$file = '/absolute/path/to/your_script.js';
if (file_exists($file)) {
    header('Content-Type: text/javascript');
    header('Content-Length: ' . filesize($file));
    ob_clean();
    flush();
    readfile($file);
    exit();
}
于 2012-10-08T13:15:51.997 に答える