X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Ответ сервера на запрос If-Modified-Since
Esperance80
Esperance80
Topic Starter сообщение 27.11.2014, 16:50; Ответить: Esperance80
Сообщение #1


Участник
***

Группа: User
Сообщений: 192
Регистрация: 14.7.2013
Из: Украина, Ровеньки
Поблагодарили: 106 раз
Репутация:   14  


Подскажите пожалуйста, отчего могут возникнуть неприятности с кешированием. Для настройки правильного ответа на запрос If-Modified-Since в header.php вставила код:
Код
<?php
header("Cache-Control: public");
header("Expires: " . date("r", time()+10800));

if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) && strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) >= $last_modified_time){
    header('HTTP/1.1 304 Not Modified');
    die; /* убили всё, что ниже */
}
header('Last-Modified: '.gmdate('D, d M Y H:i:s', $last_modified_time).' GMT');
?>

После этого стали твориться чудеса с кешем: последние комментарии и анонсы последних статей на главной в Хроме не отображаются около двух дней, в Файрфоксе и того больше. В Опере при обновлении страницы все отображается, но если перейти просто по ссылкам, те же проблемы. Как можно решить такую проблему, что за ошибка в коде?
До установки кода таких проблем не было.

Вот результат проверки сервисом Яндекса:
Код статуса HTTP: "200 OK"
Время ответа сервера: 39мс
IP сайта: 188.225.12.195
Кодировка: UTF-8(unicode-1-1-utf-8, UTF8)
Размер страницы: 63.99Кб

содержимое страницы
Заголовки:
Server: nginx/1.6.2
Date: Thu, 27 Nov 2014 12:45:56 GMT
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By: PHP/5.3.29
Cache-Control: no-cache, must-revalidate, max-age=0
Pragma: no-cache
Expires: Wed, 11 Jan 1984 05:00:00 GMT
Last-Modified: Thu, 27 Nov 2014 12:26:57 GMT
Content-Encoding: gzip
Vary: Accept-Encoding

По идее, кеш отключен вообще. В чем тогда проблема?!!


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 27.11.2014, 18:28; Ответить: x64
Сообщение #2


F.A.L.L.O.U.T.
*******

Группа: Super Moderator
Сообщений: 3425
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 2747 раз
Репутация:   289  


$last_modified_time где-то определяется?

если кеш не сохраняется между соседними запросами (а в случае получения заголовок разными сервисами это должно быть так), то сайт никогда не вернёт 304 (не должен, по крайней мере, в противном случае это будет ошибка). так что здесь ошибки быть не должно.


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Esperance80
Esperance80
Topic Starter сообщение 27.11.2014, 19:22; Ответить: Esperance80
Сообщение #3


Участник
***

Группа: User
Сообщений: 192
Регистрация: 14.7.2013
Из: Украина, Ровеньки
Поблагодарили: 106 раз
Репутация:   14  


Цитата(x64 @ 27.11.2014, 18:28) *
$last_modified_time где-то определяется?

Не знаю, какая функция выводит последнее время, но как оказалось, выводятся устаревшие данные, с опозданием. Пришлось убрать код... и обнаружила, что и без него сервер отдает ответ Last-Modified: Горе от ума....


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) [РЕКОМЕНДУЮ] >>>Тестирование Вашего сайта, сервера на устойчивость и уязвимость!
17 barbaddos 2334 11.12.2017, 16:57
автор: barbaddos
Открытая тема (нет новых ответов) SystemIP.ru - VPS и сервера в более чем 50 странах
19 SystemIP 4647 4.12.2017, 21:37
автор: SystemIP
Открытая тема (нет новых ответов) Персональные прокси сервера
Прокси в одни руки
25 VTatarskiy 5450 24.11.2017, 17:04
автор: VTatarskiy
Открытая тема (нет новых ответов) Ускорение вашего сайта и сервера. Системный администратор Linux
1 EvaSystems 575 22.11.2017, 18:34
автор: EvaSystems
Открытая тема (нет новых ответов) Выделенные сервера по цене VPS
11 ProHoster 3180 21.11.2017, 16:17
автор: ProHoster


 



RSS Текстовая версия Сейчас: 15.12.2017, 8:46
Дизайн