Код: Выделить всё
function setCacheHeader($seconds = 86400)
{
$time = gmdate("D, d M Y H:i:s", time() + $seconds) . " GMT";
header("Expires: $time");
header("Pragma: cache");
header("Cache-Control: max-age=$seconds");
}
$file = "/xxx/xxx/" . intval($_GET['id']);
setCacheHeader();
header("Content-Type: image/jpg");
header("Content-Length: " . filesize($file));
Код: Выделить всё
location /images/ {
rewrite /images/(\d+) /images.php?id=$1 last;
}
[img]https://i.sstatic. net/rjCD6.jpg[/img]
Но браузер не кэширует содержимое, я не видел ответа 304 при доступе к URL-адресу /images/ID , вместо этого он всегда возвращает 200. Я пробовал несколько раз, ничего не меняется.

Что случилось?
Подробнее здесь: https://stackoverflow.com/questions/774 ... for-images
Мобильная версия