2016-11-15 13 views
0

私はブラウザでHTMLページをキャッシュしたいのですが、localhostでバインドしています。レスポンスヘッダ内のPHP)しかし、まだブラウザは応答をキャッシュされていない、と私は同じリソースを要求するたびに、それは私が使用しています私のhtmlページの上部にありヘッダー( "Cache-Control:max-age = 36000")PHPで動作しません

からの応答をサーバに接続して取得

<?php 
header("Cache-Control:max-age=36000"); 
    ?> 

Responseヘッダーは、

です。

HTTP/1.1 200 OK

日:火、2016年11月15日14時45分37秒GMT

サーバー:Apacheの/ 2.4.16(Win32の)のOpenSSL/1.0.1pのPHP/5.6.12

Xは、パワード・バイ:PHP/5.6.12

のCache-Control:最大エージング= 36000

のAccept-範囲:なし

異なります受け入れ-エンコーディング

コンテンツエンコード:gzipで

のContent-Length:154

キープアライブ:タイムアウト= 3、最大= 100

接続:キープアライブ

のContent-Type:テキスト/ html;文字セット= UTF-8

私はヘッダーにCache-Control:max-age=36000を見て、私はページをリロードする場合、私はキャッシュされたレスポンス(と異なる応答ヘッダ)を取得し、36000秒のためにこの応答をキャッシュするブラウザを期待していたが、私リロードrequest headers後,,

をリロードした後、同じヘッダを取得し、再びストレートサーバーからの応答を取得しています

GET /check.php HTTP/1.1 
Host: localhost 
Connection: keep-alive 
Cache-Control: max-age=0 
Upgrade-Insecure-Requests: 1 
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36 
Accept:  text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 
Accept-Encoding: gzip, deflate, sdch, br 
Accept-Language: en-US,en;q=0.8 

iは応答をキャッシュするためにTELLブラウザのため、他のレスポンスヘッダを送信する必要がありますされていますか?

答えて

0

PHPは魔法のキャッシュコントロールヘッダーを単独で追加します。 header()で単純に上書きすることはできません。異なるキャッシュコントロールヘッダーを設定するにはsession_cache_limiter()を使用するか、session_cache_limiter( '')を使用してこれらのマジックヘッダーを一緒に無効にする必要があります。