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

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

Сообщений: 5589



« Ответ #20 : 20 Январь 2008, 18:39:31 »

Как научить Opera грузить сжатые .gzip и сохраненные Handycache странички в автономном режиме?

Опера умеет понимать GZIP ! Если у тебя не понимает, то возможно дело в неверной версии протокола! Ты читал ФАК ?

Цитировать
Причем в своем собственном кеше Opera сохраняет Webwarper-ские странички уже в расжатом виде

Конечно, их разжимает Проксомитрон перед отдачей Опере!
Кстати, может лучше в твоей связке поменять HC и Проксомитрон местами, как у большинства пользователей такой связки?! Тогда в кэше HC и Оперы будут одинаковые файлы.
И еще, если ты считаешь, что кэш Оперы по функциональности сможет заменить HC, то ты ошибаешься! Это уже обсуждалось здесь...

Цитировать
И еще недостаток - по таким сжатым gzip .html страничкам невозможно провести поиск контекста - т.к. расширение не gzip, а html, то поисковые программы не понимают их и не могут найти информации в них...

Это неверно! Есть поисковые программы, которые ищут внутри GZIP независимо от расширения файлов! Например, Архивариус...
Сообщить модератору   Записан
jjkl
Новичок
*

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

Сообщений: 13


« Ответ #21 : 21 Январь 2008, 12:56:01 »

"Ты читал ФАК ?"
- Да читал, и не один раз. HTTP 1.1. для прокси включено.

"Кстати, может лучше в твоей связке поменять HC и Проксомитрон местами, как у большинства пользователей такой связки?! "
-ДА ПОМЕНЯЛ! Handycache стал сохранять странички в расжатом  виде!
НО! Прикол остался! Опера не хочет грузить странички из кеша Handycache.
Причем если зайти в каталог Handycache, найти эту сохраненную страничку и вручную открыть ее то она загрузится! А через Handycache не хочет!

вот что пишет:
21.01.2008/15:28:09 local/127.0.0.1 http://webwarper.net/ww/~av/celler.ru/forum/sell/topic-139005.html 0 0/105 0 0 "503 Service Unavailable (HC)" Offline

вместе с проксомитроном:

21.01.2008/15:19:43 local/127.0.0.1 http://webwarper.net/ww/~av/celler.ru/forum/sell/topic-139005.html 0 657/75 0 729 "400 Host Not Found" Offline

КАК РЕШИТЬ ПРОБЛЕМУ!? Второй день мозг ломаю, если не ответите, придется расстаться с этой прогой....

И еще! Опера лезет в интернет в автономном режиме! ФАК и форум прочел! в настройках "Чтение из кеш" включено, "Только для GET" выключено.

""недостаток - по таким сжатым gzip .html страничкам невозможно провести поиск контекста - т.к. расширение не gzip, а html, то поисковые программы не понимают их и не могут найти информации в них...""
"Это неверно! Есть поисковые программы, которые ищут внутри GZIP независимо от расширения файлов! Например, Архивариус..."

- По моему Handycache должен быть совместимым с операционной системой, а не операционная система должна приспосабливаться к Handycache - если в винде файл с расширением  .html - это .html, а не gzip, то и Handycache должен сохранять в своем кеше страницы уже в расжатом виде!
Не хвост должен вилять собакой, а собака хвостом!


Добавлено: 21 Января 2008, 12:05:36

Опера 9.0.
Handycache самый последний щас скачал и установил.

Добавлено: 21 Января 2008, 12:13:37

Ну вроде нашел - "Списки/Не обновлять" - поставить галку в правиле " .* " - типа не обновлять всё - стало читаться из кеша!
Сообщить модератору   Записан
DenZzz
Модератор
*****

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

Сообщений: 5589



« Ответ #22 : 21 Январь 2008, 13:07:57 »

вот что пишет:
21.01.2008/15:28:09 local/127.0.0.1 http://webwarper.net/ww/~av/celler.ru/forum/sell/topic-139005.html 0 0/105 0 0 "503 Service Unavailable (HC)" Offline

Хм, похоже не работает у тебя автономный режим, хотя вроде бы и включен...
Возникла одна догадка. Покажи-ка свой файл onlyfromcache.lst из папки HC и скрин-шот вкладки "Только из кэша"...


Цитировать
Второй день мозг ломаю, если не ответите, придется расстаться с этой прогой...

Ты нам угрожаешь?  Шокирован

Цитировать
- По моему Handycache должен быть совместимым с операционной системой, а не операционная система должна приспосабливаться к Handycache - если в винде файл с расширением  .html - это .html, а не gzip, то и Handycache должен сохранять в своем кеше страницы уже в расжатом виде!

HC сохраняет файлы в том виде, как они пришли! Имя файла берется из URL ! Это вовсе не означает, что расширение файла в кэше HC будет всегда соответствовать зарегистрированному в системе формату! Например, даже если картинка придет с расширением .html, то именно с таким расширением она и будет сохранена в кэш! Это пока единственный способ для HC сохранить возможность найти потом этот файл в своем кэше!
Никакой проблемы с расширением не возникнет, если открывать такие файлы не через менеджер файлов, а в браузере через HC - тогда HC сам сообщит браузеру, в каком формате он отдает файл из своего кэша!

P.S. Про опциональную распаковку GZIP перед записью в кэш речь уже как-то шла... Для этих целей сейчас можно использовать Проксомитрон. Лично мне эта возможность не нужна, т.к. увеличивает размер файлов в кэше!

Добавлено: 21 Января 2008, 14:02:46

Ну вроде нашел - "Списки/Не обновлять" - поставить галку в правиле " .* " - типа не обновлять всё - стало читаться из кеша!

Хвост виляет собакой! Это правило для других целей и имеет маленький критерий свежести!
В общем, это плохое решение твоей проблемы с автономным режимом!
Сообщить модератору   Записан
jjkl
Новичок
*

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

Сообщений: 13


« Ответ #23 : 21 Январь 2008, 14:03:53 »

Да вроде стал грузить из кеша - см. послед. строчку моего предыдущего поста,
Наверно вам сразу надо включать правило "не обновлять" для всех файлов .* в программе сразу при установке, чтобы не мучить бедных юзеров..

 onlyfromcache.lst - вроде ничего там особо не менял:

HandyCache_list_Format_1
True#~#\.swf(\?|$)#~##~##~#0
True#~#\.(ico|jpe?g|png|gif|bmp)(\?|$)#~##~##~#1096
False#~#/image.php\?#~##~##~#0
True#~#.*#~##~#http://webwarper.net/wwgz/serv/adremover/adfree/#~#0  ;- пытался убить рекламу в Webwarper -е, но проксомитрон делает это лучше Улыбка
False#~#.*#~##~#http://webwarper.net/ww/~WWServiceScriptGZ~s/#~#0  ;- то же
False#~#/wwserv.js#~##~##~#16
False#~#/checkregistered.htm#~##~##~#13

вроде все видно на скриншоте будет тоже самое..

файл noreg.lst:

HandyCache_list_Format_3
True#~#\.(js|css)(\?|$)#~##~##~##~#1633
True#~#\.(jpg|jpeg|png|gif|bmp|swf|ico)(\?|$)#~##~##~##~#2836
True#~#.*#~#posting#~##~#0:15#~#0
False#~#/wwserv.js#~##~##~#360:00#~#4
True#~#/checkregistered.htm#~##~##~##~#2

-вот здесь была загвозда - включил третье правило - стало грузится из кеша, 15мин можно убрать вообще.
Добавлено: 21 Января 2008, 13:37:49

скришот - только из кеш
Добавлено: 21 Января 2008, 14:00:15

скриншот - "не обновлять


* 20001.jpg (29.11 Кб, 1280x345 - просмотрено 77 раз.)

* 20002.jpg (27.61 Кб, 1280x332 - просмотрено 67 раз.)
Сообщить модератору   Записан
DenZzz
Модератор
*****

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

Сообщений: 5589



« Ответ #24 : 21 Январь 2008, 14:15:12 »

True#~#.*#~##~#http://webwarper.net/wwgz/serv/adremover/adfree/#~#0  ;- пытался убить рекламу в Webwarper -е, но проксомитрон делает это лучше
False#~#.*#~##~#http://webwarper.net/ww/~WWServiceScriptGZ~s/#~#0  ;- то же

Вот этой ошибкой ты отменил автономный режим для абсолютно ВСЕХ сайтов! Видимо, плохо ты "не один раз" читал ФАК!
Очисть поле "Сайт" в этих правилах!

Цитировать
вроде все видно на скриншоте будет тоже самое..

На скрин-шоте меня интересовали не правила, а галки, которые ты там поставил! В частности, состояние галки "Отменить для Оперы"...

Цитировать
-вот здесь была загвозда - включил третье правило - стало грузится из кеша, 15мин можно убрать вообще.

У-гу, и потом грузить все старые страницы всегда из кэша! А как ты вообще смотришь форум с таким правилом? Не мешает смотреть свежие посты?...


P.S. Ты оригинально решаешь проблемы, которые сам себе создаешь! Может, стоит внимательнее читать форум и прислушиваться к советам...
« Последнее редактирование: 21 Январь 2008, 14:28:07 от DenZzz » Сообщить модератору   Записан
jjkl
Новичок
*

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

Сообщений: 13


« Ответ #25 : 22 Январь 2008, 20:12:00 »

"Очисть поле "Сайт" в этих правилах!"
ОЧИСТИЛ! Заработал автономный! только не нашел в факе из за чего это было

В инернет в автономном опера лезть перестала!
Только вот что-то по моему со своим кешем опера работает намного быстрее чем с кешем НС - особенно когда загружаешь сохраненную сессию с большим количеством окон..
А работаю я в основном через сессии.. открываю каждый день сохраненную сессию с набором нужных мне сайтов, обновление информации на которых я проверяю еждневно..
Так что с кешем оперы я не расстаюсь, да...
Сообщить модератору   Записан
DenZzz
Модератор
*****

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

Сообщений: 5589



« Ответ #26 : 22 Январь 2008, 20:31:33 »

Заработал автономный! только не нашел в факе из за чего это было

ФАК: "Почему HC сам включает/выключает правило (.)* в списке "Только из кэша"? / Как указать исключение для автономного режима?"

Цитировать
Только вот что-то по моему со своим кешем опера работает намного быстрее чем с кешем НС - особенно когда загружаешь сохраненную сессию с большим количеством окон..

HTTP-протокол медленнее собственного кэша браузера. Это давно описано в ФАКе:
"Нужен ли собственный кэш в браузере или теперь его можно отключить?"
Зато Опера тормозит на старте из-за большого собственного кэша!
Сообщить модератору   Записан
arsvrn
Новичок
*

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

Сообщений: 4


« Ответ #27 : 30 Январь 2008, 23:34:11 »

Прошу прощения, если подобный вопрос уже был...
Очень давно, еще с первых версий НС использую связку Opera - НС - Proxomitron - сеть. До последнего времени использовал версию НС 0.95b3b1. Вполне устраивала, а переходить на новый формат кеша (с использованием MD5, насколько я помню по ru-board) мне не хотелось. Решил вот поставить v1.00RC1 (понадобились условные прокси) и столкнулся с такой проблемой.
Поскольку Proxomitron расгзиповывает страницы, то периодически для уменьшения размера кеша я их сжимал в GZIP. Старая версия НС прекрасно их понимала в автономном режиме. А новая не хочет! Причем, если в кеш пишется гзипованная страница (мимо Проксомитрона), то потом НС ее понимает. А сжатую сторонним архиватором похоже не может распаковывать и, судя по логу, отдает браузеру без заголовков "Content-Encoding" и "Content-Type". В результате браузер не понимает, что это и предлагает сохранить (кстати, IE себя ведет аналогично).
Что можно сделать? Если перепаковать, то как? На старую версию уже не хочется откатываться...
PS: файрвола нет, других прокси тоже нет.
Сообщить модератору   Записан
mai62
Автор HC
*****

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

Сообщений: 6186


« Ответ #28 : 31 Январь 2008, 01:27:10 »

Привет, arsvrn, помню тебя. Ты один из первых, кто проявил интерес к НС в самом начале его публичной жизни.
О твоей проблеме. НС в файлы gzip в кэше в конец дописывает строки из заголовка вроде этого
Цитировать
Content-Type: text/html; charset=windows-1251-Content-Encoding: gzip
При выдаче из кэша эти строки помещаются в заголовок ответа.
Кроме этого признаком зипованных файлов в кэше служит аттрибут файла системный.
Поэтому вручную сделать ничего нельзя.
В принципе я могу сделать, чтобы в заголовки файлов с аттрибутом системный добавлялась строка Content-Encoding: gzip и будет как раньше. Но обращаю твое внимание, что в таком случае могут быть проблемы с кодировкой у браузера. 
Сообщить модератору   Записан
arsvrn
Новичок
*

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

Сообщений: 4


« Ответ #29 : 31 Январь 2008, 12:41:11 »

Привет, mai62! Приятно удивлен, не ожидал, что помнишь меня. Столько времени уже прошло, как я в ветке про НС появлялся.
Спасибо за разъяснение - разобрался. Уже попробовал ручками, получается подправить старые файлы. В принципе, теперь я и сам смогу конвертнуть свой кеш в современный формат. Напишу программку, которая добавляет данные в конец файла и меняет атрибуты.
Но не вредно было бы, на мой взгляд, сделать (опционально) и возможность брать GZIP'ы с добавлением заголовков. А указать ручками кодировку в браузере не так уж трудно.

PS: раз уж впомнили старые времена Улыбка . Я о той фиче с двумя наборами каталога кеша, которую я когда-то предложил. Может это никому, кроме меня, и не нужно, но хотелось бы сделать их неравноправными. Что-то вроде того, что когда выбран второй набор, то данные пишутся и в каталог первого и второго кеша. Если помнишь, это было сделано для быстрого переключения между локальным и сетевывым кешем. Так вот, хорошо бы при выборе сетевого данные дублировать и в локальном. Чтобы при отключенной сети они были доступны в локальном.
Сообщить модератору   Записан
mai62
Автор HC
*****

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

Сообщений: 6186


« Ответ #30 : 31 Январь 2008, 14:17:31 »

Цитировать
Но не вредно было бы, на мой взгляд, сделать (опционально) и возможность брать GZIP'ы с добавлением заголовков. А указать ручками кодировку в браузере не так уж трудно.
Долгое время так и было, НС понимал оба формата. А потом я решил, что старого формата уже ни у кого нет, и убрал его. Оказывается поспешил, верну взад.
Цитировать
теперь я и сам смогу конвертнуть свой кеш в современный формат
Чтобы ты не разгадывал ребусы, у меня это сделано так
Цитировать
    n:= 0;
    sd:= '';
    if (Encoding<>'') and (FileStream.Size>0) then
    begin
      if Content_Type<>'' then
      begin
        s:= 'Content-Type: '+Content_Type;
        l:= Length(s);
        sd:= sd+s;
        sd:= sd+char(l);
        Inc(n);
      end;
      s:= 'Content-Encoding: '+Encoding;
      l:= Length(s);
      sd:= sd+s;
      sd:= sd+char(l);
      Inc(n);
      sd:= sd+char(n);
      sd:= sd+char(0);
    end;
    if n>0 then
    begin
      FileStream.write(sd[1], Length(sd));
      SetFileAttributes(PChar(FileName), faSysFile);
    end;
Цитировать
хорошо бы при выборе сетевого данные дублировать и в локальном. Чтобы при отключенной сети они были доступны в локальном.
Давай сделаю опцию "Сохранять файлы в папки обоих наборов". При закрытии файла в основном наборе буду копировать файл во второй набор.
Сообщить модератору   Записан
arsvrn
Новичок
*

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

Сообщений: 4


« Ответ #31 : 31 Январь 2008, 15:02:53 »

mai62
Цитировать
Долгое время так и было, НС понимал оба формата. А потом я решил, что старого формата уже ни у кого нет, и убрал его. Оказывается поспешил, верну взад
Хорошо бы...
Цитировать
Чтобы ты не разгадывал ребусы, у меня это сделано так
Спасибо, понял.
Цитировать
Давай сделаю опцию "Сохранять файлы в папки обоих наборов". При закрытии файла в основном наборе буду копировать файл во второй набор
Отлично, это вполне подойдет Улыбка .
Сообщить модератору   Записан
mai62
Автор HC
*****

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

Сообщений: 6186


« Ответ #32 : 31 Январь 2008, 18:37:07 »

Хорошо, сделаю.
Сообщить модератору   Записан
arsvrn
Новичок
*

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

Сообщений: 4


« Ответ #33 : 31 Январь 2008, 22:09:21 »

Спасибо!
Сообщить модератору   Записан
Сергей
Beta tester
*****

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

Сообщений: 621



« Ответ #34 : 01 Февраль 2008, 13:19:39 »

mai62 Я что то не понял. Ты же уже соглашался сделать распознавание gzip только по сигнатуре? Зачем аттрибут системный сейчас ставить? И Content-Encoding: gzip в конце совершенно лишнее.
Сообщить модератору   Записан
mai62
Автор HC
*****

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

Сообщений: 6186


« Ответ #35 : 01 Февраль 2008, 15:01:24 »

Вчера обнаружил, что при причесывании исходников несколько месяцев назад случайно нарушил работоспособность распознавания gzip по сигнатуре и он не работает в последней публичной версии.  По любому это не основной способ, а запасной, на случай если не сработает основной.
Сообщить модератору   Записан
Enver
Новичок
*

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

Сообщений: 46


« Ответ #36 : 24 Апрель 2009, 12:49:40 »

Каким архиватором надо запаковывать страницы в gzip формат, чтобы HC и браузер понимали эти страницы, пробывал линуксовский gzip и 7z. Но браузер показывает крякозябры и HC в мониторе не пишет "gzip". Страницы из кеша которые были изначально загзипованные сервером нормально распознаются
Сообщить модератору   Записан
Enver
Новичок
*

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

Сообщений: 46


« Ответ #37 : 27 Апрель 2009, 09:00:28 »

DenZzz, зачем ты это сюда перенёс, я про локальное хранение кеша вообще то Улыбка
Сообщить модератору   Записан
Сергей
Beta tester
*****

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

Сообщений: 621



« Ответ #38 : 30 Апрель 2009, 18:22:24 »

Возможно надо паковать с ключем --no-name. Т.к. внутри архива должен быть не файл а просто сжатые данные.
Сообщить модератору   Записан
Enver
Новичок
*

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

Сообщений: 46


« Ответ #39 : 30 Апрель 2009, 21:02:42 »

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

 
Перейти в: