+  HandyCache форум
|-+  Главная категория» Сжатие трафика» Особенности хранения и выдачи из кэша GZIP-сжатых страниц
Имя пользователя:
Пароль:
Страниц: [1] 2 3  Все   Вниз
  Отправить эту тему    Печать  
Автор Тема: Особенности хранения и выдачи из кэша GZIP-сжатых страниц  (Прочитано 49836 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Marvel
Новичок
*

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

Сообщений: 4


« : 24 марта 2007, 18:23:02 »

Если качать .gz (для остальных всё нормально) файлы через HC (например http://ftp.debian.org/debian/pool/main/a/a2ps/a2ps_4.13b.dfsg.1.orig.tar.gz) , то в конец добавляются заголовки. Файл то распаковывается нормально, но контрольная сумма уже не та, из-за чего линуху через HC не поставить, да и еще проблем может добавить. Версия HC - HandyCache098b1. Дополнительная инфа - надо мной родительский проски squid.
UPD: в таком виде файл хранится в кэше, если забрать через HC то мусор отрезается.
« Последнее редактирование: 24 марта 2007, 18:29:10 от Marvel » Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #1 : 24 марта 2007, 18:36:45 »

Если мусор отрезается, то почему linux не поставить?
Но глюк надо бы исправить, конечно.
Сообщить модератору   Записан
Marvel
Новичок
*

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

Сообщений: 4


« Ответ #2 : 24 марта 2007, 18:40:48 »

Если мусор отрезается, то почему linux не поставить?
Тогда только если через НС что не всегда возможно - я папку из кэша указывал с диска, пакеты .deb качаются нормально, а с .gz такая беда - надо теперь прогу писать готорая проедется по паре гигов исходников и поотрезает "хвосты" =)
UPD: кстати, у всех так НC ведет себя или это из-за сквида надо мной? Попробуйте скачать указанный файл и посмотреть хвост (но не у скачанного а в кэше).
UPD2: вот файлик полегче для проверки  : http://ftp.debian.org/debian/pool/main/c/crawl/crawl_4.0.0beta26-8.diff.gz   - 10 кб
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #3 : 24 марта 2007, 20:00:41 »

Попробуйте скачать указанный файл и посмотреть хвост (но не у скачанного а в кэше).
Файл в кэше получился с хвостом и атрибутом Системный.

Вытащи файлы из кэша с помощью Offline Explorer и все исправится.
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #4 : 24 марта 2007, 20:05:39 »

Кстати, лучше сразу из интернета качать оффлайн-браузером или качалкой, т.к. в кэш попадают не все скачанные файлы. Потому, что HC не поддерживает докачку.
Сообщить модератору   Записан
Rick
Администратор
*****

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

Сообщений: 868


WWW
« Ответ #5 : 24 марта 2007, 20:16:40 »

Не совсем понимаю проблему.

из-за чего линуху через HC не поставить, да и еще проблем может добавить.
Из-за чего не поставить? Каких проблем? Если файл оказался в кэше, то значит и клиент получил этот файл - и клиенту этот файл отдан в нормальном виде: никаких проблем.

Вытащи файлы из кэша с помощью Offline Explorer и все исправится.
А зачем ему "вытаскивать" эти файлы? Они у него и так лежат на диске без всяких хвостов в указаноой им при сохранении папочке.
Сообщить модератору   Записан
Marvel
Новичок
*

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

Сообщений: 4


« Ответ #6 : 24 марта 2007, 20:23:36 »

А зачем ему "вытаскивать" эти файлы? Они у него и так лежат на диске без всяких хвостов в указаноой им при сохранении папочке.
На диск они не сохраняются, они в линухе во временные при установке копируются, устанавливаются и потом чистятся, да и мало ли линуху переставить захочу. Вручную на диск тут не сохраняется, иначе бы и кэш незачем.  Себе то я утилиту написал что хвосты чистит, но решение не лучшее, бага не отменяет, тем более подтвердили что воспроизводится не только у меня.
Сообщить модератору   Записан
Rick
Администратор
*****

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

Сообщений: 868


WWW
« Ответ #7 : 24 марта 2007, 20:33:49 »

они в линухе во временные при установке копируются, устанавливаются и потом чистятся, да и мало ли линуху переставить захочу.
Не важно. Клиенту (без разницы браузер это или программа установки линуха) отдается без всяких хвостов. С хвостами - только хранится в кэше.

Цитировать
бага не отменяет
Я вижу баг в том, что архиву, как и обычному html-файлу сжатому gzip, в хвост пишутся заголовки - а не должны бы. Однако я пока так и не понял какими же проблемами это грозит клиентской программе?
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #8 : 24 марта 2007, 20:39:41 »

Та же проблема с Windows Update и с базами антивирусов.
Суть в том, что не хочется повторно скачивать после переустановки системы или при обслуживании нескольких компьютеров.

HC пока не умеет сохранять данные с Partial Content. Но это уже другая тема.
Сообщить модератору   Записан
mai62
Автор HC
*****

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

Сообщений: 6383


« Ответ #9 : 25 марта 2007, 03:11:02 »

Всем файлам, имеющим в заголовке Content-Encoding: ..., НС в конец дописывает в конец строки из заголовка. Это нужно чтобы при выдаче файла из кэша эти строки можно было восстановить, иначе клиент не сможет правильно интерпретировать полученные данные. Значит твои .gz файлы идут с 'Content-Encoding: ...' в заголовке.
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #10 : 25 марта 2007, 09:47:29 »

Почему-то этот тестовый файл в кэше сжат а в папке куда я его сохранил лежит текстовый файл с расширением .gz Видимо, браузер увидел заголовок Content-Encoding:gzip и сам распаковал.
Тогда, выходит, что HC сработал правильно. Если баг есть, то на сервере.

Но на будущее, хотелось бы, чтобы HC умел сам распаковывать GZip при сохранении в кэше.
Сообщить модератору   Записан
Marvel
Новичок
*

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

Сообщений: 4


« Ответ #11 : 26 марта 2007, 12:27:20 »

Всем файлам, имеющим в заголовке Content-Encoding: ..., НС в конец дописывает в конец строки из заголовка. Это нужно чтобы при выдаче файла из кэша эти строки можно было восстановить, иначе клиент не сможет правильно интерпретировать полученные данные. Значит твои .gz файлы идут с 'Content-Encoding: ...' в заголовке.
Ясно, значит кэш на диске лучше не использовать напрямую. Хотело бы чтобы можно было. В идеале - отдельный кэш служебной информации, заголовков, etc.
Сообщить модератору   Записан
Shasoft2
Новичок
*

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

Сообщений: 17


« Ответ #12 : 06 апреля 2007, 09:23:59 »

1. Если в HC пришла сжатая страница, то он отдает её браузеру сжатой?
2. Как HC обращается с локальными адресами? Их тоже кэширует?
Сообщить модератору   Записан
Rick
Администратор
*****

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

Сообщений: 868


WWW
« Ответ #13 : 06 апреля 2007, 09:33:41 »

1. Да. И в кэше страница так же хранится в сжатом виде.
2. НС кэширует все, что указано правилами списка "Запись в кэш". Если браузер бездумно настроен на использование прокси для локальных адресов - значит этот трафик пойдет через НС, значит будет проверен список "З", значит возможно (смотря какие правила) будет кэшировать.
Сообщить модератору   Записан
Shasoft2
Новичок
*

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

Сообщений: 17


« Ответ #14 : 06 апреля 2007, 09:46:50 »

2. Просто в какой-то прокси видел такой параметр "Не кэшировать локальные адреса".  К примеру у нас локальная сеть и есть http сервер. Не хотелось бы, чтобы его кэшировали.
Может можно сделать настройку: "Не кэшировать локальные адреса"?

3. Наткнулся на неприятную особенность при настройке webwraper. Запашивается файл moon.gif и запрос перенаправляется на webwraper. Тот, в свою очередь, возвращает код 302, так как такой файл он сжать не может. После этого опять срабатывает правило перенаправления на сервер webwraper и так в цикле до бесконечности.
Правило у меня на gif настроено, чтобы не перенаправляло, но главное, что в любом случае возможна ситуация, когда в правиле может быть не указан файл, который НЕ надо сжимать и тогда то зацикливание и получается.

4. Если в серверах посредниках указать файл без пути, то он будет искаться в директории HC?

213.234.30.210
Сообщить модератору   Записан
Rick
Администратор
*****

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

Сообщений: 868


WWW
« Ответ #15 : 06 апреля 2007, 10:02:51 »

2. Просто в какой-то прокси видел такой параметр "Не кэшировать локальные адреса".  К примеру у нас локальная сеть и есть http сервер. Не хотелось бы, чтобы его кэшировали.
Может можно сделать настройку: "Не кэшировать локальные адреса"?
Сделать можно. Но поскольку это будет дублированием функции, имеющейся в каждом браузере "не использовать прокси для локальных адресов", приоритет этой фичи крайне мал.

Цитировать
3. Наткнулся на неприятную особенность при настройке webwraper. Запашивается файл moon.gif и запрос перенаправляется на webwraper. Тот, в свою очередь, возвращает код 302, так как такой файл он сжать не может. После этого опять срабатывает правило перенаправления на сервер webwraper и так в цикле до бесконечности.
Правило у меня на gif настроено, чтобы не перенаправляло, но главное, что в любом случае возможна ситуация, когда в правиле может быть не указан файл, который НЕ надо сжимать и тогда то зацикливание и получается.
Сорри, я не пользуюсь никакими "сжималками", тонкостей не знаю. Но, насколько я помню, во-первых, некоторые "сжималки" работают и с графикой (пережимают с потерей качества), и, во-вторых, в списках есть графа "Исключение", а в списке "Серверы-посредники" в условиях можно задать что же именно сжимать.

Цитировать
213.234.30.210
В чем прикол?
Сообщить модератору   Записан
DenZzz
Модератор
*****

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

Сообщений: 5589



« Ответ #16 : 06 апреля 2007, 11:59:08 »

Про WebWarper продолжаем в его теме...
Сообщить модератору   Записан
MrFree
Новичок
*

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

Сообщений: 1


« Ответ #17 : 10 апреля 2007, 01:40:23 »

У меня такой вопрос:
Можно ли в качестве варианта решения данной проблемы ввести ОПЦИЮ, и хранить эту информацию в потоках NTFS?
Сообщить модератору   Записан
Кирилл
Beta tester
*****

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

Сообщений: 124


« Ответ #18 : 09 июня 2007, 11:58:14 »

MrFree
Нельзя. Кеш не обязательно расположен на диске с NTFS
Сообщить модератору   Записан
jjkl
Новичок
*

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

Сообщений: 13


« Ответ #19 : 20 января 2008, 18:01:51 »

Пользуюсь Handycache давно, программа отличная, только недавно обнаружил одну проблему, которая очень снижает ценность Handycache.
Работаю в Opera через Proxomitron <- Handycache <- Webwarper - только в этом случае достигается максимальная экономия траффика - Proxomitron режет всю рекламу, а Webwarper сжимает оставшееся в несколько раз.
Соответственно все странички, загруженные через Webwarper, остаются в кеше Handycache - причем в сжатом виде например сжатая gzip-ом страница вида: http://webwarper.net/ww/~av/celler.ru/forum/sell/topic-138975.html. При этом хотя у страницы расширение .html, на самом деле это gzip-архив, который можно просмотреть только переименовав расширение в .gzip.
И вот пытаюсь открыть эту сохраненную в Handycache страницу в автономном режиме, однако Opera теперь уже "не понимает" что это страница сжата .gzip, выдает крякозябры вместо странички, Handycache выдает ошибку 503.
Как научить Opera грузить сжатые .gzip и сохраненные Handycache странички в автономном режиме?
Причем в своем собственном кеше Opera сохраняет Webwarper-ские странички уже в расжатом виде и проблем с их загрузкой в автономном режиме не возникает. Но получается в этом случае нужно держать на диске 2 кеша с одинаковым содержимым (Operы и Webwarperа), что нерационально. да и вообще  получается кеш Handycache не нужен.
И еще недостаток - по таким сжатым gzip .html страничкам невозможно провести поиск контекста - т.к. расширение не gzip, а html, то поисковые программы не понимают их и не могут найти информации в них...

Сообщить модератору   Записан
Страниц: [1] 2 3  Все   Вверх
  Отправить эту тему    Печать  

 
Перейти в: