Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Закладки » HandyCache - локальный кеширующий прокси сервер

Модерирует : gyra, Maz

Widok (27-04-2006 12:30): лимит страниц. продолжаем здесь.  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HandyCache


Кеширующий HTTP прокси сервер. Главное назначение программы заключается в ускорении загрузки WEB-страниц и сокращении расходов на оплату трафика. Экономия только за счет испрользования кеша может достигать 70 и более процентов. Блокирование рекламы с помощью черного списка делает экономию еще большей.
   Программа ориентирована в основном на обслуживание запросов пользователя компьютера, на котором она установлена. Однако, она также может быть использована для 'раздачи интернета' на компьютеры небольшой домашней сети.
Автор mai62

Окна программы:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20

Сайт программы:
Сайт программы перехал на новый хостинг. Место под проект предоставленно TurboMent`ом.
Новый адрес http://handycache.e-voice.ru.
Версия сайта по адресу http://handycache.narod.ru скоро перестанет обновлятся.
Последняя версия (при первой установке используйте это):
HandyCache095b3b.zip
Последняя бета (только exe, скопируйте в папку HandyCache):
HandyCache095b3bexe.zip
Версия HCie с исправленным HCCmd.exe
HCie.zip
Поддержать проект можно отправив sms-сообщение. Подробности на сайте программы.
FAQ ( Часто задаваемые вопросы )
  • Преимущество НС перед собственным кешем браузера?
  • Какова логика программы? Где посмотреть описание Списков?
  • Как добавить правило в Список HC?
  • Что такое Регулярные выражения (RegExp)?
  • Когда объект кэша обновляется?
  • Что такое "свежий файл"?
  • А каков порядок работы Списков? Есть схема?
  • Как работают исключения?
  • Установил НС, а в мониторе нет записей! В чем проблема?
  • Поставил НС, картинки в списке "Не обновлять", но HC постоянно запрашивает их на сервере! Процент "экономии" очень низкий! Почему?
  • Поставил НС, а картинки не грузятся!!! Почему?
  • Поставил НС, а у меня все картинки грузятся!!! Хотя режим "только из кеша" включен! Почему?
  • Что означает галка "Только для GET-запросов" в списках "Запись в кеш" и "Не обновлять"?
  • А нельзя ли сделать что бы НС хранил кеш в одном файле. А то знаете ли фрагментация...
  • А можно найти где нибудь описание интерфейса со скринами и описанием режимов?
  • Запрошенная страничка не грузится. В мониторе НС - "502 Bad gateway". Почему?
  • Какие-то страные проблемы с Firefox. Непонятно, что открывается...
  • Почему-то последнии версии HandyCache не держит настройку (.)* на вкладке "Не обновлять". После перезапуска программы галочка всегда включена.
  • А можно ли НС подсунуть кеш от Cool Proxy? Ну или хотя бы узнать отличия?
  • Как изменить стандартную надпись при попадании в "черный список"?
  • Как расчитывается экономия трафика?
  • А что будет, если списки будут неприлично огромным? Как это скажется на быстродействии?
  • Как работает список "Переадресация" (ранее "URL-конвертор")?
  • Как работает "Преобразование URL" во вкладке "Кэш"?
  • Интеграция в IE
  • Интеграция НС в Opera  (Предложено unreal666)
  • Как объединить HC и WebWarper для экономии трафика за счет GZIP-сжатия?

    - Черный список для HandyCache - тут или тут (распаковать в папку с HC) на 26.02.05 - 181 правило (7 отключены) Описание...
    - Списки фильтров от NapA [смотреть]

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 17:48 26-01-2006 | Исправлено: unreal666, 20:46 25-04-2006
    faZZ



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    это правильный. все же расписано

    Всего записей: 1642 | Зарегистр. 10-01-2004 | Отправлено: 11:42 08-04-2006
    DenZzz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    dadu

    Цитата:
    Это правильный ответ?

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

    Цитата:
    для IE выставить опцию "Проверять наличие обновления сохраненных страниц:" - "Никогда"

    Это неправильный ответ! Тогда страницы всегда будут браться из собственного кэша браузера, если они там есть. Правильно ставить точку: "При каждом посещении страницы". Вот и картинка уже пробегала...  
    Хотя, при размере кэша браузера в 1 Мб местоположение точки не критично, т.к. в него практически ничего не умещается и почти все запросы идут через HC.

    Всего записей: 2138 | Зарегистр. 09-02-2005 | Отправлено: 11:45 08-04-2006 | Исправлено: DenZzz, 11:57 08-04-2006
    V0lt



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Taimael
    В урле 736 символов... Значит на урл придеться выделять минимум килобайт

    Цитата:
    при совпадении "rose.ixbt.com/phones/search" заменить все "Feature" на "#"

    ты символ # не трогай, он специальный

    Цитата:
    когда планируется сделать сохранение длинных урлов?

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

    Всего записей: 10457 | Зарегистр. 05-02-2003 | Отправлено: 11:49 08-04-2006
    mai62



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Чтобы избежать данной ситуации, нужно почистить кэш браузера и уменьшить его размер до минимума (1 Мб) или отключить совсем.  

    Согласен с DenZzz

    Цитата:
    Ключевые слова: "почистить кэш браузера",  

    Важно дать шанс файлу попасть в кэш НС.

    Цитата:
    когда планируется сделать сохранение длинных урлов?  

    Хорошо бы найти алгоритм преобразования длинной строки в более короткую. Умеют же архиваторы жать текстовые фыйлы в разы.

    Всего записей: 1717 | Зарегистр. 06-12-2002 | Отправлено: 12:20 08-04-2006
    DenZzz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Taimael

    Цитата:
    как в преобразованиях сделать замену всех "Feature" ?  
    примерная логика правила:  
    при совпадении "rose.ixbt.com/phones/search" заменить все "Feature" на "#"

    Вообще так:
    Правило Замена Заменить все Обязательный
    rose.ixbt.com/phones/search(?=.*Feature.*) \0
    V
    Feature #
    V

    Но твой URL слишком длинный для сохранения в кэш.    
    Например, с тремя "Feature" эти правила работают правильно и в кэш пишется преобразованный URL.

    Всего записей: 2138 | Зарегистр. 09-02-2005 | Отправлено: 12:28 08-04-2006
    Gluek



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Хорошо бы найти алгоритм преобразования длинной строки в более короткую. Умеют же архиваторы жать текстовые фыйлы в разы.

    А md5($url) не подойдет? А потом сравнивать с md5 страницы. Совпало - грузить из кеша.

    Всего записей: 27 | Зарегистр. 07-08-2004 | Отправлено: 13:06 08-04-2006
    DenZzz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mai62
     
    А на самом деле, почему бы не преобразовывать имя слишком длинного файла в кэше в MD5 его имени и сохранять рядом, скажем, файл MD5.url с полным URL-ом? Эти файлы класть в папки соответствующих сайтов.
     

     
    Например, какой-нибудь:  
     
    http://rose.ixbt.com/phones/search.php?Firma=&weight_min=&weight_max=&TimeTalk=&TimeWait=&Battery=&DisplayLines=&Color=0&Colors=&Network2=on&MinPrice=&MaxPrice=&Feature10=-1&Feature46=-1&Feature32=-1&Feature24=-1&Feature27=-1&Feature9=-1&Feature44=-1&Feature45=-1&Feature41=-1&Feature40=-1&Feature48=1&Feature8=-1&Feature43=-1&Feature34=-1&Feature2=-1&Feature4=-1&Feature15=-1&Feature28=-1&Feature38=-1&Feature16=-1&Feature26=-1&Feature6=-1&Feature22=-1&Feature7=-1&Feature5=-1&Feature11=-1&Feature1=-1&Feature3=-1&Feature33=-1&Feature39=-1&Feature19=-1&Feature35=-1&Feature21=-1&Feature18=-1&Feature25=-1&Feature29=-1&Feature31=-1&Feature12=-1&Feature36=-1&Feature30=-1&Feature42=-1&Feature23=-1&Feature17=-1&submit=%CD%E0%E9%F2%E8%21
     
    можно записать в такой файл в кэше:  

    Сache\rose.ixbt.com\phones\search.php^\223B9F83F576396ADECE6D46F876A54B.md5

     
    где 223B9F83F576396ADECE6D46F876A54B - это MD5 текстового файла new.url, содержащего полный URL страницы.  
     
    Затем new.url переименовать в 223B9F83F576396ADECE6D46F876A54B.url, чтобы можно было потом посмотреть (восстановить) полный URL в случае необходимости.
     
    Преобразование имени файла в MD5 производить только в случае превышения длины его имени сверх допустимого.

    Всего записей: 2138 | Зарегистр. 09-02-2005 | Отправлено: 13:24 08-04-2006 | Исправлено: DenZzz, 14:00 08-04-2006
    Interceptor

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mai62
    С новой версией приколы продолжаются. На запрещенные урл (когда срабатывает правило из черного списка) выдается кусок черного списка. Юзаю черный список, который тут выкладывался однажды. Возможно просто сейчас по другому строятся правила для черного списка? ПРосто раньше такого глюка не было

    Всего записей: 602 | Зарегистр. 09-05-2003 | Отправлено: 16:25 08-04-2006
    V0lt



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Люди, пожалуста, не цитируйте больше этот длинный урл. Ваши посты читать тяжело
     
    DenZzz

    Цитата:
    А на самом деле, почему бы не преобразовывать имя слишком длинного файла в кэше в MD5 его имени и сохранять рядом, скажем, файл MD5.url с полным URL-ом? Эти файлы класть в папки соответствующих сайтов.

    Выглядит неплохо, и реализовать не сложно
    но я бы сохранял так:  
    Сache\rose.ixbt.com\phones\search.php^\#-223B9F83F576396ADECE6D46F876A54B
    и хешировал не вес урл, а только то что после "?"
    или даже лучше хешировать не урл, а имя файла после "^\"
     
    Только есть одно НО, делать обратное преобразовывание будет очень сложно
     
     

    Всего записей: 10457 | Зарегистр. 05-02-2003 | Отправлено: 16:30 08-04-2006
    DenZzz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    V0lt

    Цитата:
    Только есть одно НО, делать обратное преобразовывание будет очень сложно

    Обратное преобразование в программах поиска по кэшу, типа Архивариуса?
    Поэтому я и предлагаю сохранять URL в файле MD5.url, чтобы можно было потом узнать, откуда скачана страница.
     
    Еще, можно резать длинный URL на несколько частей покороче не более определенной длины (создавая вложенные папки в кэше)...

    Всего записей: 2138 | Зарегистр. 09-02-2005 | Отправлено: 17:47 08-04-2006
    V0lt



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    IMHO прежде чем делать поддержку длинных урлов, надо переделать структуру кеша.
     
    Также, IMHO придется вводить ограничения:
    1) ограничить длину имени папки кеша хотя бы 50 символами (если больше, то ругаться)
    2) считать урл длинным если после преобразования в файл, полное относительное имя файла (без папки кеша) более 200 символов.
     
    Эти два ограничения необходимы для того чтобы при переносе кеша, длинность урла всегда трактовалась одинаково.
     
    DenZzz
    на счет обратных преобразований md5-урлов:
    - Такие урлы доволно редкие
    - Даже если сделаем просмоторщик кеша, незнание полного урла нас не будет сильно ограничивать (могу обосновать)
    - Алгоритм с полным сохранение длинных урлов доволно сложен и структура кеша получается малоудобной в работе
     
    вообщем, преобразовывать все что после знака "?" (или "^\") для длинных урлов в виде md5-хеша  - это хорошая идея
    ...даже без всяких MD5.url

    Всего записей: 10457 | Зарегистр. 05-02-2003 | Отправлено: 17:51 08-04-2006 | Исправлено: V0lt, 17:54 08-04-2006
    cluster

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mai62
    Кстати, а можно где-нить в мониторе сделать, чтобы фиксировался общий размер загруженной страницы?

    Всего записей: 1720 | Зарегистр. 21-11-2003 | Отправлено: 18:58 08-04-2006
    mai62



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Gluek

    Цитата:
    А md5($url) не подойдет? А потом сравнивать с md5 страницы. Совпало - грузить из кеша.

    Мне кажется нужно сделать так:
    1. Преобразовать url в имя файла в кэше
    2. Выделить имя файла (без пути) и если оно больше 200 байт, то имя файла составить из след. частей:
    - первые 200 байт имени файла
    - символ #
    - md5 имени файла.
    Обратное преобразование имени файла в url будет невозможно. Но так ли это страшно? Для работы НС это не нужно вообще. Для работы программ индексации кэша это не страшно, т.к. такие файлы вероятно чаще всего втречаются глубоко внутри структуры сайта. Вряд ли есть нужда индексировать кэш до последнего файла.
    Interceptor

    Цитата:
    С новой версией приколы продолжаются. На запрещенные урл (когда срабатывает правило из черного списка) выдается кусок черного списка. Юзаю черный список, который тут выкладывался однажды.

    Приведи пример, чтобы я мог это воспроизвести у себя.
    cluster

    Цитата:
    Кстати, а можно где-нить в мониторе сделать, чтобы фиксировался общий размер загруженной страницы?

    Не все загружаемые файлы имеют поле Referer и такой подсчет будет неточным.

    Всего записей: 1717 | Зарегистр. 06-12-2002 | Отправлено: 21:43 08-04-2006
    unreal666



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mai62
    mai62

    Цитата:
    2. Выделить имя файла (без пути) и если оно больше 200 байт, то имя файла составить из след. частей:  
    - первые 200 байт имени файла  
    - символ #  
    - md5 имени файла.

    Так наибольшая длина имени файла в винде считается именно для полного пути.

    ----------
    MSI PRO B650-P WIFI / Ryzen 5 7600X / RAM 32Gib / 4 HDD = 10Tib + 1 NVME 2Tib / Radeon RX 560 2Gib / Win 10 x64 // POB, PVD

    Всего записей: 6637 | Зарегистр. 14-02-2005 | Отправлено: 21:54 08-04-2006
    mai62



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    unreal666

    Цитата:
    Так наибольшая длина имени файла в винде считается именно для полного пути.

    Странно. Разве имя файла с полным путем где-нибудь хранится целиком? Мне кажется нет. А зачем тогда его ограничивать?

    Всего записей: 1717 | Зарегистр. 06-12-2002 | Отправлено: 22:25 08-04-2006
    V0lt



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mai62

    Цитата:
    - первые 200 байт имени файла
    - символ #
    - md5 имени файла.

    тогда получим 200+1+32=233 символа  - на папку кеша мало букв останется
    к  тому же придется смотреть чтобы 200 символов не попадало на границу кодов и также желательно чтобы 201 символ не был "/"
     
    имхо:
    - надо кодировать query (то что поcле "?") целиком
    примеры:
    %СASHE%\site.com\phones\search.php#\#223B9F83F576396ADECE6D46F876A54B
    %СASHE%\site.com\phones\search.php#\#-223B9F83F576396ADECE6D46F876A54B
     
    - если этого не хватит то кодить после последнего "\" в пределах 200 символов
    примеры:
    %СASHE%\site.com\некий_длинный_путь\phones\#223B9F83F576396ADECE6D46F876A54B
    %СASHE%\site.com\некий_длинный_путь\phones\#-223B9F83F576396ADECE6D46F876A54B
     
    PS: Если дадите функцию для дельфи преобразующую строку в md5, то могу внедрить ее в свой вариант преобразователя.
    Еще надо определиться, что именно кодить: кусок урла или косок имени файла (разницы особой не вижу, но кодить урл проще и быстрее)

    Всего записей: 10457 | Зарегистр. 05-02-2003 | Отправлено: 10:06 09-04-2006 | Исправлено: V0lt, 10:08 09-04-2006
    C0USIN



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    mai62

    Цитата:
    Странно. Разве имя файла с полным путем где-нибудь хранится целиком? Мне кажется нет. А зачем тогда его ограничивать?

    Не знаю зачем, но это так. Ограничена именно длина полного пути.
     
    Добавлено:

    Цитата:
    Обратное преобразование имени файла в url будет невозможно.

    Точный URL восстанавливать необязательно. Важно получить такой URL, по которому HC выдал бы нужную страницу из кэша.

    Всего записей: 2739 | Зарегистр. 18-07-2003 | Отправлено: 11:09 09-04-2006
    mai62



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    V0lt
     

    Цитата:
    Если дадите функцию для дельфи преобразующую строку в md5, то могу внедрить ее в свой вариант преобразователя.

    Возьми здесь _http://www.fichtner.net/delphi/md5.delphi.phtml?download=md5.pas
     
    Сделал эксперимент. В ФАТ32 макс. длина пути вместе с именем файла 258 символов.
    Для экономии места предлагаю вместо md5 использовать crc32 (8 символов вместо 32).

    Всего записей: 1717 | Зарегистр. 06-12-2002 | Отправлено: 11:36 09-04-2006 | Исправлено: mai62, 13:21 09-04-2006
    V0lt



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mai62

    Цитата:
    Для экономии места предлагаю вместо md5 использовать crc32  

    я сначала сделаю для md5, так что потом можно было не сложно изменить на crc32
     

    Цитата:
    Сделал эксперимент. В ФАТ32 макс. длина пути вместе с именем файла 258 символов.

    Я на NTFS похожие эксперименты проделывал, файлы после этого не хотели удалятся
     
    Добавлено:
    mai62
    сделал пробный вариант, со след. свойствами:
    - урл считается длинным если ему соответсвут полное имя файла без папки кеша длиной более 200 символов
    (папку кеша специально не учитывал, чтобы при переносе кеша, алгоритм работал правильно)
    - кодирование сделал в виде #-md5 (34 символа)
    - кодируется косок URL
    - код записывается в имени файла после последнего символа "\", но не дальше 166-го (=200-34)
    -  в о-o-oчень редких случаях получаемая длина имени файла может достигнуть 202
    (редирект)
     
    теперь тот длинный урл преобразовывается так
    URL2File -> rose.ixbt.com\phones\search.php#\#-d4d30db25e4f615800ac00773dbb37ff
    File2URL -> хттп://rose.ixbt.com/phones/search.php?-d4d30db25e4f615800ac00773dbb37ff
     
    код отправил на мыло
     
    PS: функция URL2File опять возвращает относительный путь (без папки кеша), так и останется

    Всего записей: 10457 | Зарегистр. 05-02-2003 | Отправлено: 15:59 09-04-2006 | Исправлено: V0lt, 18:20 09-04-2006
    Interceptor

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mai62
    В черном списке, выложенном в шапке есть 6-е правило:
    +top.*    
    дополняем его исключением:
    +desktop.*
    Сохраняем список и набираем в браузере
    http://top1/
    Срабатывает правило 2.70:
    (.)*(top|hit)(\d+)
     
    Вываливается в результат:
    Подробнее...
     
    в логи:
    Подробнее...
     
    Кстати о Avant Browser Когда-то я предлагал ввести возможность и для Avant Browser точно так же как для Oper-ы добавить его в исключения. То есть чтобы напрямую из Avant можно было разрешать или запрещать показывать картинки. Тогда ты отказал, аргументируя что Avant Browser не показывает в строке User Agent никакой информации о себе.
    Вот что я выловил сейчас:
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Avant Browser; Avant Browser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
    User-Agent: Avant Browser (http://www.avantbrowser.com)

    Всего записей: 602 | Зарегистр. 09-05-2003 | Отправлено: 18:41 09-04-2006
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

    Компьютерный форум Ru.Board » Компьютеры » Программы » Закладки » HandyCache - локальный кеширующий прокси сервер
    Widok (27-04-2006 12:30): лимит страниц. продолжаем здесь.


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru