http://www.psi-net.co.jp/blog/?p=1121
Etag と Last-modified ヘッダを使って動的コンテンツでもブラウザキャッシュさせるため、上記サイトを参照してやってみるも、iphone7ではうまくいきませんでした。
特徴としては、iphone7でアクセスすると
下記値がとれない(ことがある)
filter_input(INPUT_SERVER, 'HTTP_IF_MODIFIED_SINCE')
filter_input(INPUT_SERVER, 'HTTP_IF_NONE_MATCH')
下記環境変数が$_SERVERに設定される
[REDIRECT_no-gzip] = 1
[REDIRECT_dont-vary] = 1
[HTTP_CACHE_CONTROL] = max-age=0
解決できなかったので、
「上記ヘッダーが設定されているときは、キャッシュさせない」
という方針としました。教えて詳しい方!
if (empty($_SERVER['HTTP_CACHE_CONTROL'])
and ($if_modified_since === $last_modified || $if_none_match === $etag)) {
header('HTTP', true, 304);
exit;
}