За последние 24 часа нас посетили 56678 программистов и 1682 робота. Сейчас ищут 1228 программистов ...

last modified и кэш страниц

Тема в разделе "PHP для новичков", создана пользователем zevilz, 18 сен 2013.

  1. zevilz

    zevilz Активный пользователь

    С нами с:
    14 июн 2010
    Сообщения:
    182
    Симпатии:
    0
    Добавляю для страниц last modified:
    Код (Text):
    1. if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) && strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) >= $last_modified_time){
    2.     header('HTTP/1.1 304 Not Modified');
    3.     die;
    4. }
    5. header('Last-Modified: '.gmdate('D, d M Y H:i:s', $last_modified_time).' GMT');
    В кеше браузера сохряняется копия страницы. Причем весь динамический контент намертво привязан к этой странице, включая комменты. Если отправить коммент, то он не появится пока не удалишь кэш вручную.
    Оставил только нижнюю строку - та же проблема. Если удалить этот код и очистить кэш, то опять все работает как надо. Как можно это исправить?
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.815
    Симпатии:
    1.332
    Адрес:
    Лень
    вы сами делаете чтобы сохранялась стр в кеше на определенный срок. удали заголовок и все шоколадно будет
     
  3. zevilz

    zevilz Активный пользователь

    С нами с:
    14 июн 2010
    Сообщения:
    182
    Симпатии:
    0
    а как сделать, чтобы страница в кеше не сохранялась, а last-modified передавался?
     
  4. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.815
    Симпатии:
    1.332
    Адрес:
    Лень
    header('HTTP/1.1 304 Not Modified') - Для разгрузки канала клиента за счет кеширования браузером страниц можно использовать следующий код, позволяющий браузеру не загружать те страницы, которые у него уже есть в кэше.

    Добавлено спустя 9 минут 43 секунды:
    http://last-modified.com/ru/if-modified-since.html