+  HandyCache форум
|-+  Главная категория» Общие вопросы» Ответ "304 Not Modified (HC)"
Имя пользователя:
Пароль:
Страниц: 1 2 3 [4] 5  Все   Вниз
  Отправить эту тему    Печать  
Автор Тема: Ответ "304 Not Modified (HC)"  (Прочитано 58038 раз)
0 Пользователей и 1 Гость смотрят эту тему.
mih
Пользователь
**

Репутация: +3/-0
Offline Offline

Сообщений: 97


« Ответ #60 : 26 января 2010, 17:59:17 »

Немного перемешалось, поэтому разделю два наблюдения.
Речь идет о чтении всяких css, js, jpg.

============  РЕЖИМ "Чтение из кеша" (стоит галка), но кеш ПУСТОЙ.

> Эта "НЕОБЪСНИМАЯ" странность давно ОБЪЯСНЕНА В ФАКЕ!
> Читай про работу списка "Не обновлять" и его колонку "КРИТЕРИЙ СВЕЖЕСТИ".

Я убрал эту цифру ("Критерий свежести"). Правило заработало.

Там написано (Как работает список "Не обновлять"?, в примечаниях), что (безусловно)
"Если файла нет в кэше, то он будет загружен из Интернета".

На самом деле, по моим наблюдениям, работает своеобразно:

Если:
 — галка "чтение их кеша" - стоит
 — в правиле НЕ ЗАДАН критерий свежести,
 — и он идёт от браузера на проверку (т.е. в его кеше он есть) —
то всё равно будет ответ "304 Not Modified, HC" (для IE)
(и "client disconnected" для Оперы)
даже, если файла, проходящего по правилу, НЕТ в кеше HC.

А вот если будет задан ПРОИЗВОЛЬНЫЙ критерий свежести
(любая цифра, и, конечно, — галка),
то при тех же услових
запрос файла в любом случае в любое время пройдёт в сеть.
(мы увидим в графе "Ответ": для IE6 — "304 Not Modified" (без окончания "HC"),
и для Оперы  "client disconnected", почему — не знаю, но, наверное, суть одна).


Добавлено: 26 Января 2010, 17:58:40

============  РЕЖИМ "НЕ Чтение из кеша" (сброшена галка).
Кеш пустой. СМОТРИМ ПОВЕДЕНИЕ ОПЕРЫ 9.64.


> Дай угадаю... У тебя работают расширения из соседней темы,
> которые удаляют заголовки If-Modified-Since и If-None-Match?

Я поставил эти правила для особых случаев, — и они, конечно, выключены.
Если они включены, то все строчки в мониторе всегда у меня голубые,
но они выключены!

Обновляем страницу — в мониторе "client disconnected"
(за замечание про "констатацию факта" благодарю, а то никак не мог понять, что это такое).

При последующих обновлениях, например, каждые 5-10-15 секунд —
все файлы ЧИТАЮТСЯ из сети
(именно так, как было бы при включённых тех самых расширениях).

Дело в том, что когда я заказывал эти расширения, я ещё работал на версии 0.97
(знаю, знаю, что они там отсутствуют ещё) —
искал оперную команду, аналогичную Ctrl F5 в IE,
и видел в мониторе 0.97b1, что Опера не обновляет вторичные файлы страницы,
а только проверяет их на обновление.

Получив от Вас расширение, вырезающее заголовки,
я ПОСТАВИЛ НОВЕЙШУЮ ВЕРСИЮ HC (но ещё не подключил расширения) —
и сразу бросилось в глаза, что та же самая Опера изменила поведение:
в каких-то непонятных случаях она стала ОБНОВЛЯТЬ файлы!
(а с расширениями — обновляет всё, всегда, и предсказуемо, но это сейчас неважно).
Что изменилось? Только версия HC ! Опера — та же.


Ещё раз — с новым HandyCache RC3.1.0.0.252 —
если нажимаем F5 реже раз в ~30 секунд — всё время видим "client disconnected".
Но если чаще — файлы начинают читаться из сети до следующей 30 секундной паузы.
(т.е как-бы типа "не обновлять" с "-00:00:30").
Это — "недокументированное" влияние HC на Оперу.
Повторю, что говорю о режиме сброшенной галки "Чтение из кеша".

Добавлено не в тему, простите:

Галка "Сортировать по домену" в очистке  работает не очень правильно.
Во-первых, для её работы нужно, чтоб
 — во-первых, стояла стрелка в заголовке столбца "Каталог"
(логично, но её у меня сначала не было, а галку — щёлкаю, а результата нет); 
 — а во-вторых, если поставить галку,
потом нажать "Запустить", — галка остаётся,
но результата от неё не будет, пока не СНЯТЬ-ПОСТАВИТЬ её заново.
Эти моменты в совокупности (если дотошно не копать) —
создают впечатление, что отсортировать по домену программа не может.
Надо что-то со вторым моментом сделать.

Помещение галки включения фильтрации в мониторе
в убирающееся окно —
я сразу попался на это:
галку поставленную забыл, окно внизу убрал  — и всё:
что-то есть в мониторе, чего-то нет, непонятно, что случилось.
Цвет воронки на кнопке — вещь не очень информативная.


Если что-то путаю, простите.
« Последнее редактирование: 26 января 2010, 18:49:53 от mih » Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #61 : 28 января 2010, 09:09:47 »

Цитировать
Там написано (Как работает список "Не обновлять"?, в примечаниях), что (безусловно)
"Если файла нет в кэше, то он будет загружен из Интернета".

На самом деле, по моим наблюдениям, работает своеобразно

В последних версиях HC работает так, как сказано в п.2 здесь: http://handycache.ru/component/option,com_smf/Itemid,10/topic,782.msg13697/#msg13697  , что полностью соответствует твоим наблюдениям.

Цитировать
Ещё раз — с новым HandyCache RC3.1.0.0.252 —
если нажимаем F5 реже раз в ~30 секунд — всё время видим "client disconnected".
Но если чаще — файлы начинают читаться из сети до следующей 30 секундной паузы.
(т.е как-бы типа "не обновлять" с "-00:00:30").
Это — "недокументированное" влияние HC на Оперу.

У меня Опера 10.01, отключил чтение из кэша HC, попробовал воспроизвести твой опыт - не воспроизводится! Хоть часто нажимаю F5, хоть редко - всегда получаю "304 Not Modified" из инета. Очень редко мелькают "client disconnected", но только потому, что рядом есть аналогичный запрос с "304 Not Modified".

В общем, твои выводы про "недокументированное влияние HC на Оперу" не подтверждаю. У меня такого влияния нет и HC ведет себя одинаково правильно.

Цитировать
Что изменилось? Только версия HC ! Опера — та же.

С 0.97b1 до RC3.1.0.0.252 много воды утекло и много было разных сборок. В HC изменилось многое, в частности реализована поддержка Pipelining'а, который активно использует Опера, а IE - не использует никогда. Обилие у тебя строк "client disconnected" наталкивает меня на мысль, что какой-то элемент в твоей цепочке "Опера - Сервер сайта" не умеет работать с Pipelining'ом. Это может быть любой промежуточный софт, пропускающий через себя HTTP-трафик: файервол, антивирус, баннеро-резка, прокси провайдера и т.п. ...

А попробуй в настройках Оперы отключить HTTP/1.1 для прокси:  opera:config#Proxy|EnableHTTP1.1forproxy
Кстати, в Опере 10 можно отключить и сам Pipelining:  opera:config#Performance|EnablePipelining
Сообщить модератору   Записан
mih
Пользователь
**

Репутация: +3/-0
Offline Offline

Сообщений: 97


« Ответ #62 : 29 января 2010, 13:58:32 »

Специально поставил Оперу 10.10, чистую,
(описанное ранее я пробовал на 9.64 — десятки ужасно дёргают изображение) —
эффект ПОВТОРИЛСЯ.
Единственное — действительно, (правда, наоборот) —
раньше НЕ была отмечена "Включить HTTP 1.1 для прокси", — когда её отметил, "client disconnected" сменился на "304 Not Modified" — вот и все изменения (не знаю, почему так). Отключение Pipelining-а  — ничего не меняет.

Точно так же:
при снятой галке "Чтение из кеша"
на этой странице:
 — первое обновление — сплошные "304 Not Modified" от сервера,
 — последущие (при условии —  нажимать с паузой менее 30 секунд) —
все строки в мониторе становятся голубыми, всё читается из сети.

Если же я убираю HandyCache RC3.1.0.0.252
и запускаю старую версию 0.97b1, ничего более не меняя —
и продолжаю обновлять страницу —
всегда вижу "304 Not Modified" независимо ни от чего.
 
То есть: Опера 10.10 меняет своё поведение в зависимости от версии HC
(это я и обозвал "влиянием HC на Оперу").

Не имею ничего: ни брандмауеров (точнее — есть встроенный в XP SP2),
ни "антивирус, баннеро-резка, прокси провайдера..." — ничего этого у меня никогда не было.

Я описал ситуацию — кто знает, может быть это поможет найти в программе
какое-либо недоразумение.

-----------------------------
Вот ещё мелочь, опять не в тему (не соображу, куда написать):

HandyCache RC3.1.0.0.252
Опера 9.64 и 10.10
Галки ВСЕХ списков сброшены.

http://www.mail-it24.com
нажатие кнопки "Get temporary e-mail"
приводит к:

Blocked
Access to the requested URL — was not allowed (bad redirect).


(а в IE: — Ошибка 403 - Запрещено)

Старая же версия HC 0.97b1 — работает с этой кнопкой.
« Последнее редактирование: 29 января 2010, 14:21:15 от mih » Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #63 : 29 января 2010, 16:03:36 »

— первое обновление — сплошные "304 Not Modified" от сервера,
 — последущие (при условии —  нажимать с паузой менее 30 секунд) —
все строки в мониторе становятся голубыми, всё читается из сети.

У меня всегда одни "304 Not Modified". Сделай отладочный лог HC и приложи к посту, иначе мы вряд ли найдем причину...

Цитировать
Access to the requested URL — was not allowed (bad redirect).

Это новая фича описана здесь: http://handycache.ru/component/option,com_smf/Itemid,10/topic,2764.0/
Сейчас в ней есть баг, который будет исправлен в следующей версии HC.



Если поставить правило .* всё не обновлять, то если в кэше нет записи, то оно возьмётся из интернета. я правильно понял???

Да.
Сообщить модератору   Записан
mih
Пользователь
**

Репутация: +3/-0
Offline Offline

Сообщений: 97


« Ответ #64 : 29 января 2010, 21:06:59 »

Два лога приложил.

Но — похоже, не расширенные.
Я убил HC,
добавил в секцию [TMainForm] строку DebugModeVisible=True,
запустил HC — но чекбокса так и не увидел — все глаза проглядел.
Нашёл параметр DebugMode_Checked, поставил =True — но, похоже, не действует.

* log.rar (10.82 Кб - загружено 24 раз.)
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #65 : 29 января 2010, 21:52:50 »

Два лога приложил.

Есть одна догадка. Переставь системное время секунд на 30 назад и попробуй еще раз воспроизвести свои эксперименты...
Сообщить модератору   Записан
mih
Пользователь
**

Репутация: +3/-0
Offline Offline

Сообщений: 97


« Ответ #66 : 29 января 2010, 21:57:18 »

Я не пойму, — когда перевести время?
И заодно — где же чекбокс, и лог отладочный получился у меня, или нет?
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #67 : 29 января 2010, 22:19:05 »

Я не пойму, — когда перевести время?

Сейчас. У тебя системное время спешит. Переведи его назад секунд на 30-40.

И заодно — где же чекбокс,

См. скрин.

Цитировать
и лог отладочный получился у меня, или нет?

Нет, но думаю уже и не надо...


* Отладка.png (15.39 Кб, 926x581 - просмотрено 124 раз.)
Сообщить модератору   Записан
mih
Пользователь
**

Репутация: +3/-0
Offline Offline

Сообщений: 97


« Ответ #68 : 30 января 2010, 12:11:02 »

Действительно так, теперь работает нормально.
А If-None-Match почему не срабатывал?
...............................
А почему:
 —  IE работал обычным образом
с неправильным временем (проверил сейчас ещё раз)?
 — версия HC 0.97b1 тоже "не чувствительна" к этому?
...............................
И что с чекбоксом:
я его и искал в этом месте, но его там нет!

Я написал (сюда скопировал из .ini):
[TDialForm]
DebugModeVisible=True
DebugMode_Checked=True

Запустил HC — нет чекбокса!  Вот — сейчас ещё раз сделал —
параметры стоят, а результата нет.
И DebugMode_Checked не помог (я думаю, это та самая галка?).
« Последнее редактирование: 30 января 2010, 12:53:41 от mih » Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #69 : 30 января 2010, 16:04:09 »

Действительно так, теперь работает нормально.
А If-None-Match почему не срабатывал?

Потому что RFC 2616 велит так делать:
Цитировать
   An HTTP/1.1 origin server, upon receiving a conditional request that
   includes both a Last-Modified date (e.g., in an If-Modified-Since or
   If-Unmodified-Since header field) and one or more entity tags (e.g.,
   in an If-Match, If-None-Match, or If-Range header field) as cache
   validators, MUST NOT return a response status of 304 (Not Modified)
   unless doing so is consistent with all of the conditional header
   fields in the request.

Некоторые сервера просто так настроены, что не отвечают 304 Not Modified, когда в If-Modified-Since время больше, чем текущее время на сервере. Они, наивные, считают, что такого быть не может. Подмигивающий

А почему:
 —  IE работал обычным образом
с неправильным временем (проверил сейчас ещё раз)?
 — версия HC 0.97b1 тоже "не чувствительна" к этому?

В версии HC 0.97b1 еще не был реализован ряд мероприятий по увеличению эффективности собственного кэша клиента (I-M-S, I-N-M и т.п.): http://handycache.ru/component/option,com_smf/Itemid,10/topic,782.msg13697/
В частности, значение поля Last-Modified в ответе сервера не подменялось на текущее системное время.

IE, в отличии от Оперы, не берет значение поля Last-Modified из ответа 304 и всегда использует то время, которое пришло с сервера изначально вместе с файлом. Этим объясняется разница в запросах этих браузеров и соответственно в разных ответах сервера.

Цитировать
Я написал (сюда скопировал из .ini):
[TDialForm]
DebugModeVisible=True
DebugMode_Checked=True

Товарищ! Кто велел вставлять эту строку в секцию [TDialForm]? В ФАКе написано про [TMainForm]!
Сообщить модератору   Записан
mih
Пользователь
**

Репутация: +3/-0
Offline Offline

Сообщений: 97


« Ответ #70 : 30 января 2010, 16:51:25 »


Кто бы мог подумать, что [TMainForm] — где-то в середине
ini файла, а в начале — какая-то другая секция с неотличимым названием?
И так проблем много — и тут ещё голову надо сломать.

Спасибо, товарищ.
Сообщить модератору   Записан
AlexSadko
Гость
« Ответ #71 : 21 февраля 2010, 06:45:51 »

Заголовок взят из FAQа, то есть проблема в том, что практически все настройки сделаны согласно рекомендациям, но проблема !!!HC постоянно запрашивает на сервере картинки и получает ответ "304 Not Modified"! Процент "экономии" очень низкий! Почему?!!! имеет место быть!
Может, что изменилось со времен создания фака?
Конфигурация:
WinXPSP3, Opera 10.1
HC последний, подключение через Скайлинк. И ЕЩЁ!
При посещении сайта скайлинк наблюдается следующий эфект, при выборе региона (воронежская) загружается индех страница региона, а при попытке перейти по ссылке, скажем тарифы, скидывает на страницу тарифов московского региона.
Проблему удалось решить, только одновременной очисткой кэша браузера и НС, но она теперь стала повторятся чуть по другому, заходим на воронежскую страницу из списка выбираем регион (москву) открывется индех москвы, переходишь по сылке тарифы и снова попадаешь на воронежскую страницу тарифов.
Снова одновременная чистка обоих кэшей и всё о'кей??? Злой
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #72 : 21 февраля 2010, 09:30:32 »

Заголовок взят из FAQа, то есть проблема в том, что практически все настройки сделаны согласно рекомендациям, но проблема !!!HC постоянно запрашивает на сервере картинки и получает ответ "304 Not Modified"! Процент "экономии" очень низкий! Почему?!!! имеет место быть!
Может, что изменилось со времен создания фака?

Нет. Ответы 304 не учитываются в подсчете экономии, как и раньше.

Цитировать
При посещении сайта скайлинк наблюдается следующий эфект, при выборе региона (воронежская) загружается индех страница региона, а при попытке перейти по ссылке, скажем тарифы, скидывает на страницу тарифов московского региона.

Не наблюдаю такого эффекта. У меня выбранный регион не сбрасывается.
Сообщить модератору   Записан
Доктор ТуамОсес
Гость
« Ответ #73 : 24 мая 2011, 10:25:35 »

Обнаружил такую вот траблу.
Гружу страницу, содержащую несколько десятков скриптов и несколько сотен картинок (GIF-ов).
Естественно, я как человек не глупый, занёс файлы с расширениями CSS, JS и GIF в список не "обновлять".

Поэтому если грузить страницу без HC я трачу около 800 килобайт трафика.
А когда я гружу эту страницу через HC, то я трачу всего лишь около 60 килобайт. Т.е. "и ежу понятно"(с), что большинство файлов было взято HC из кэша.
Какой огромный выигрыш.
Но почему то HC хотя и берёт CSS, JS и GIF из кэша значение счётчика "Взято из кэша" в мониторе почему-то не увеличивается.

В результате HC показывает намного меньшую экономию трафика, чем есть на самом деле.

Как это можно "полечить"?
Сообщить модератору   Записан
alex77
Старожил
****

Репутация: +11/-1
Offline Offline

Сообщений: 482



« Ответ #74 : 24 мая 2011, 11:00:28 »

а если вспомнить, что и браузеров есть кеш Подмигивающий
Сообщить модератору   Записан
Доктор ТуамОсес
Гость
« Ответ #75 : 24 мая 2011, 13:15:07 »

а если вспомнить, что и браузеров есть кеш Подмигивающий
Я, как бы, в курсе.
Чай не первый год замужем инетом пользуюсь.  По секрету

Но, видите ли в чём дело, уважаемый.
Если бы браузер брал файло из своего кэша, то в мониторе HC я не видел бы кучи строк в которых отображаются все GIF, CSS и JS страницы и в которых в колонке ответ написано "304 Not Modified (HC)" Смущен
Сообщить модератору   Записан
mai62
Автор HC
*****

Репутация: +226/-4
Offline Offline

Сообщений: 6383


« Ответ #76 : 24 мая 2011, 17:01:57 »

Цитировать
ответ написано "304 Not Modified (HC)"
Ответ 304 означает, что реально НС не отдавал файл браузеру, а только сообщил ему, что файл не изменился (ответ состоял из одного заголовка). Браузер взял файл из своего кэша.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #77 : 24 мая 2011, 21:47:01 »

Если бы браузер брал файло из своего кэша, то в мониторе HC я не видел бы кучи строк в которых отображаются все GIF, CSS и JS страницы и в которых в колонке ответ написано "304 Not Modified (HC)" Смущен

Доктор ТуамОсес, ты кнопкой "Поиск" пользоваться-то умеешь? Сто раз уже обсуждалось, что значит "304 Not Modified (HC)", как оно работает и почему не учитывается в статистике:
http://handycache.ru/component/option,com_smf/Itemid,10/topic,283.0/
http://handycache.ru/component/option,com_smf/Itemid,10/topic,158.0/
http://handycache.ru/component/option,com_smf/Itemid,10/topic,63.0/
Сообщить модератору   Записан
Доктор ТуамОсес
Гость
« Ответ #78 : 25 мая 2011, 00:07:01 »

Цитировать
ответ написано "304 Not Modified (HC)"
Ответ 304 означает, что реально НС не отдавал файл браузеру, а только сообщил ему, что файл не изменился (ответ состоял из одного заголовка). Браузер взял файл из своего кэша.
А файл реально не изменился, или просто с момента его последней закачки прошло времени меньше, чем указано в "критерии свежести", и поэтому дата файла на сервере не проверялась Кэнди Кэшем?
Добавлено: 24 Мая 2011, 23:42:41

Доктор ТуамОсес, ты кнопкой "Поиск" пользоваться-то умеешь? Сто раз уже обсуждалось, что значит "304 Not Modified (HC)", как оно работает и почему не учитывается в статистике:
...
http://handycache.ru/component/option,com_smf/Itemid,10/topic,158.0/
...
Раз уж  тема " Нужен ли расчет экономии и в каком виде?" (на которую ссылается данная Вами ссылка) закрыта, то отвечу здесь.
Расчёт экономии трафика нужен. Но считаться должен по другому. Кроме суммарного объёма взятых их кэша файлов в "мониторе" должно показываться общее кол-во файлов:
1) взятых из инета
2) взятых из кэша HC + НЕ взятых ниоткуда (файлов, загрузка которых была предотвращена/заблокирована (файлы из чёрного списка, или файлы, вместо загрузки которых HC отправил браузеру ответ "Not Modified"))

Т.е. статистика работы HC, ИМХО, должна выглядеть примерно так:
Суммарный объём файлов, взятых из инета: 146 667 678 байт
Суммарный объём файлов, переданных браузеру из кэша HC : 36 666 989 байт
Всего файлов загружено из инета: 46 889 штук
Всего новых файлов в кэше HC: 23 454 штук
Всего обновлённых файлов в кэше HC: 12 456 штук
Всего новых + обновлённых файлов в кэше: 35 910 штук
Предотвращена загрузка из инета: 567 777 файлов
« Последнее редактирование: 25 мая 2011, 00:11:35 от Доктор ТуамОсес » Сообщить модератору   Записан
mai62
Автор HC
*****

Репутация: +226/-4
Offline Offline

Сообщений: 6383


« Ответ #79 : 25 мая 2011, 00:07:15 »

Ты же сам написал, что
Цитировать
как человек не глупый, занёс файлы с расширениями CSS, JS и GIF в список не "обновлять"
Раз не глупый (вот ты три книжки пишешь, может скажешь как правильно "не глупый" писать в данном контексте, слитно или раздельно?) человек сказал не обновлять, значит без вопросов не обновлять.
А вообще 304 может появиться в разных ситуациях, в зависимости он этого и действия разные были перед этим. Читай документацию, там с картинками описано как чего проверяется.
Сообщить модератору   Записан
Страниц: 1 2 3 [4] 5  Все   Вверх
  Отправить эту тему    Печать  

 
Перейти в: