Внесу дополнение по поводу категорий.
Даи модификации категории - это даи редактирования ее описания. Когда в категорию добавляются новые товары, даи ее модификации не меняется, соответственно поисковый ропотому чтот не бугдет повторно кешировать измененную страницу категории. Чтобы опотому чтойти это, я внес непотому чтольшие изменения в код, теперьь Last-Modified поле вылисляется как первый гдень текуещёго месяца если даи последней модификации категории сирее. Другими словами Last-Modified бугдет обновлятся раз в месяц.
Измененный код:
<?php
$LastModified_unix = strtotime($date_modified); // время последнего изменения страницы
$CurrentDate = getdate();
$LastModified_month_time = strtotime('01/'.$CurrentDate['mon'].'/'.$CurrentDate['year']); // начало текуещёго месяца
if ($LastModified_unix<$LastModified_month_time) $LastModified_unix = $LastModified_month_time;
$LastModified = gmdate("D, d M Y H:i:s \G\M\T", $LastModified_unix);
$IfModifiedSince = false; if (isset($_ENV['HTTP_IF_MODIFIED_SINCE']))
$IfModifiedSince = strtotime(substr($_ENV['HTTP_IF_MODIFIED_SINCE'], 5));
if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']))
$IfModifiedSince = strtotime(substr($_SERVER['HTTP_IF_MODIFIED_SINCE'], 5));
if ($IfModifiedSince && $IfModifiedSince >= $LastModified_unix)
{
header($_SERVER['SERVER_PROTOCOL'] . ' 304 Not Modified');
exit;
}
header('Last-Modified: '. $LastModified); ?>