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
Сообщений: 3871
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 3238 раз
Репутация:   317  


$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: Горе от ума....

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


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


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


Свернуть

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

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыВопрос по bitrix - Монитор производительности: сервер БД и статистика сервера
1 KrisGuseva 466 26.3.2020, 16:24
автор: suffix
Горячая тема (нет новых ответов) Ускорение вашего сайта и сервера. Системный администратор Linux
34 EvaSystems 13688 23.3.2020, 15:26
автор: EvaSystems
Горячая тема (нет новых ответов) Путешествия: вопрос - ответ.
Задай вопрос по путешествиям и получи на него развернутый ответ
71 Lifekaifer 6537 19.3.2020, 22:00
автор: Lifekaifer
Открытая тема (нет новых ответов) Выделенные сервера и VDS в аренду
сервера под любые белые цели и задачи
15 vdscom 5043 3.3.2020, 21:50
автор: vdscom
Открытая тема (нет новых ответов) SystemIP.ru - VPS и сервера в более чем 50 странах
0 SystemIP 175 28.2.2020, 19:38
автор: SystemIP


 



RSS Текстовая версия Сейчас: 9.4.2020, 22:56
Дизайн