Ru-Board.club
← Вернуться в раздел «Программы»

» HandyCache - локальный кеширующий прокси сервер

Автор: DenZzz
Дата сообщения: 07.03.2006 20:39
unreal666

Цитата:
А списка как раз и являются входным текстом для HC.

Не понял твою мысль...

Цитата:
Для ограничения тренажера нужно в нем сделать галку для проверки в начале правила на присутствие http:// (чтобы было опционально).

Примерно это и предлагаю, только ^http://(www\.)? надо отсекать от исходного URL-а до проверки срабатывания самого правила (естественно, опционально).
Автор: unreal666
Дата сообщения: 07.03.2006 21:23
DenZzz

Цитата:
Не понял твою мысль...

В смысле, что в реальной работе URL являются входными данными, а правила - фильтрами. А в тренажере все свое - и данные (данные любые, не только URL) и фильтр.

Цитата:
Примерно это и предлагаю, только ^http://(www\.)? надо отсекать от исходного URL-а до проверки срабатывания самого правила (естественно, опционально).

Отсекать надо в самом правиле тренажера, а во входных данных тренажера (т.е. сам URL или что угодно) ничего не трогать.
Или выводить предупреждение, что с данным выражением в правиле тренажера возможно, применительно к списку, не сработает из-за отсечения перед проверкой в списке http://www.
Автор: DenZzz
Дата сообщения: 07.03.2006 22:04
unreal666

Цитата:
Отсекать надо в самом правиле тренажера, а во входных данных тренажера (т.е. сам URL или что угодно) ничего не трогать.

Вот тебе пример:
Исходные данные: http://www.site.ru/
Автор: unreal666
Дата сообщения: 07.03.2006 22:34
DenZzz
Уговорил, можно и из поля данных удалять.

Цитата:
Тренажер HC должен уметь обрабатывать URL-ы так, как он это делает в своих же списках! Иначе, грош - цена такому Тренажеру!

Тренажер в HC предназначен для проверки регеспов Perl, но как мы писали выше можно добавить галочку для включения отсечения этих хреновин, что и будет соответствовать обработке правил в списках.
Автор: DenZzz
Дата сообщения: 07.03.2006 22:48
unreal666

Цитата:
Уговорил, можно и из поля данных удалять.

Наконец-то, договорились...

Теперь надо, чтобы mai62 проникся этой мыслью...
Автор: D555
Дата сообщения: 08.03.2006 08:18
mai62

Хотелось бы услышать Ваше мнение о добавлении фичи:

"Кешировать и сохранять(подставлять) файлы куки"

Замечу, что на сегодня имхо нет нормального менеджера для кукисов.
Ведь куки - по идее контент(и особо ценный для форумов, приватных сайтов и т.д. ) , полученный из сети, а значит подлежит кешированию(то бишь сохранению и подставлению) .
Автор: DenZzz
Дата сообщения: 08.03.2006 09:47
D555

Цитата:
"Кешировать и сохранять(подставлять) файлы куки"

Куки "кеширует" (сохраняет, постоянно изменяет и "подставляет") сам браузер после получения от сервера заголовка Set-Cookie.

Экономить трафик на куки вряд ли возможно. Да и какой в этом смысл - форумы могут перестать "узнавать" пользователя, не будут знать дату последнего визита и т.д.
Если ты имеешь в виду резервное копирование куки, то для этого HC не предназначен. Для сохранения паролей есть другие средства...
Автор: Ang
Дата сообщения: 08.03.2006 11:23
unreal666
Для составления и проверки регулярных выражений (безотносительно к URL) есть специализированые приложения. Например Regex Coach (http://weitz.de/regex-coach/) или коммерческие варианты, такие как RegexBuddy. Сами по себе ведь эти выражения не зависят от программы, которая их использует. Хотя, библиотеки, с помощью которых они обрабатываются, могут иметь отличия (в полноте реализации, не в синтаксисе!). Вопрос только в том - какой из них пользуется автор.
Автор: D555
Дата сообщения: 08.03.2006 18:00
DenZzz
Так вот и нужно, чтобы форумы всегда узнавали пользователя по кукам в НС. Никогда не переставляли броузер?Пользуетесь несколькими?А так все кукисы для которых всегда приходилось вводить пароли уже под рукой и все сайты тебя знают. И для локальной сборки подойдёт: записал на флэшку и опять же -не нужно париться с паролями.
Автор: mai62
Дата сообщения: 08.03.2006 21:07
C0USIN

Цитата:
У меня такое предложение: к именам папок всегда добавлять окончание #
Так мы исключим конфликты одноименных файлов и папок. Программа упростится. Не придется отслеживать такие ситуации. Следовательно увеличится производительность.

А ради чего? Разве теперешняя производительность создает проблемы? Зато какой букет проблем мы получим из-за несовместимости кэша.
cluster

Цитата:
Какие ещё запреты? Где снять?

Запретить Черный список.

Цитата:
А больше напрягает зацикливание.

А ты уверен, что виноват НС?

Цитата:
А почему у меня пропал заголовок НС на страницах, типа "такая-то страница не найдена в кеше"? Отображается стандартный IE-шный

IE при ответе с кодом 404 по неизвестным мне причинам заменяет сообщение прокси на свое. Если заполнить поле Показывать файл на вкладке Черный список, то НС будет отдавать ответ с нестандартным кодом 430 и IE не будет самовольничать.
DenZzz

Цитата:
Кстати, я раз уже поднимал вопрос о неточной обработке URL-ов в Тренажере.
Я считаю, что проверяемый URL в Тренажере должен обратываться точно также, как и в Списках, т.е. надо автоматически отбрасывать лидирующие http:// и http://www. , иначе не все знают, что URL в Тренажер надо писать "очищенным" от этих вещей...

Сделаю опцию.
D555

Цитата:
Хотелось бы услышать Ваше мнение о добавлении фичи:

"Кешировать и сохранять(подставлять) файлы куки"

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

Тогда куки окажутся 'замороженными'. Хорошо ли это? Нужно взвесить.
Ang

Цитата:
Сами по себе ведь эти выражения не зависят от программы, которая их использует. Хотя, библиотеки, с помощью которых они обрабатываются, могут иметь отличия (в полноте реализации, не в синтаксисе!). Вопрос только в том - какой из них пользуется автор.

Библиотеку, которую я использую, я брал здесь _http://www.regular-expressions.info/delphi.html
Цитата оттуда

Цитата:
Delphi itself does not provide a regular expression library, so you will need to use a third party VCL component. I recommend that you use a component that is based on the open source PCRE library. This is a very fast library, written in C. The regex syntax it supports is very complete. There are a few Delphi components that implement regular expressions purely in Delphi. Though that may sound like an advantage, the pure Delphi libraries I have seen do not support a full-featured modern regex syntax.
There are many PCRE-based VCL components available. Most are free, some are not. Some compile PCRE into a DLL that you need to ship along with your application, others link the PCRE OBJ files directly into your Delphi EXE.
One such component is TPerlRegEx, which I developed myself.
...
RegexBuddy's Win32 Delphi code snippets are based on the TPerlRegEx component.
Автор: orphelin
Дата сообщения: 08.03.2006 22:08
Только недавно начал пользоваться НС, до этого стоял кулпрокси, теперь просто передо мной стояла задача дать интернет на соседний комп. пока от проги только самые положительные впечатления, но вот вопрос, может правда не до конца разобрался.

на компе1 где установлен НС все нормлально - открываю страницу, загружается без картинок, обновляю конкретную картинку с шифтом - появляется.
соседний комп использует прокси на комп1 и картинки никак не загружаются. только когда снимаю галку "разрешен" со страницы "5. только из кэша"

где я недоглядел?
Автор: C0USIN
Дата сообщения: 08.03.2006 22:53
V0lt
Твой алгоритм споткнется на такой ситуации когда нам нужно записать файл /index.shtm/2006/03/06/197171 и уже существует файл /index.shtm
Простое добавление #_ в конец имени 197171 не решит проблемы.

mai62

Цитата:
А ради чего? Разве теперешняя производительность создает проблемы? Зато какой букет проблем мы получим из-за несовместимости кэша.

Я говорю о сложности а не о производительности. И судя по изысканиям V0lt твой алгоритм не продуман и не дает гарантии что по имени файла можно восстановить URL. Совместимости с кэшем CoolProxy практически нет. Кроме .move. никаких файлов не читается. Уж лучше тогда убрать эту опцию.
Проблемы с несовместимостью кэша надуманны. Нужен просто нормальный конвертор из старых версий.
Зачем нам проверять конфликты файлов и папок когда можно просто их избежать с помощью грамотной функции преобразования URL
Автор: mai62
Дата сообщения: 08.03.2006 22:56
orphelin

Цитата:
на компе1 где установлен НС все нормлально - открываю страницу, загружается без картинок, обновляю конкретную картинку с шифтом - появляется.
соседний комп использует прокси на комп1 и картинки никак не загружаются. только когда снимаю галку "разрешен" со страницы "5. только из кэша"

где я недоглядел?

Так и будет. Настройки НС действуют одинаково на все запросы независимо от того с какого компа они поступают. Видимо в Вашей ситуации придется отказаться от использования списка Только из кэша.
Другой вариант - запустить на компе1 две копии НС. Первая будет работать для раздачи инета на оба компа (разрешить только список Запись в кэш). Вторая копия НС на компе1 пусть обслуживает только юзера компа1 (здесь настройки списков по предпочтениям этого юзера, Запись в кэш выкл, использовать тот же кэш, что и первая копия НС в режиме только для чтения). На компе2 запустить НС, настроить на первую копию НС на компе1, настроить списки по предпочтениям этого юзера. Кэш можно организовать локальный или расшарить папку кэша компа1 (тогда выкл. список Запись в кэш).

Добавлено:
C0USIN

Цитата:
Я говорю о сложности а не о производительности.

Никакой особой сложности там не вижу.

Цитата:
И судя по изысканиям V0lt твой алгоритм не продуман и не дает гарантии что по имени файла можно восстановить URL.

Не понятно откуда такой вывод и зачем нужно восстанавливать URL.

Цитата:
Совместимости с кэшем CoolProxy практически нет. Кроме .move. никаких файлов не читается. Уж лучше тогда убрать эту опцию.

Это сделано в том объеме в каком я знаком с кэшем СР. Знаешь больше - пиши.

Цитата:
Проблемы с несовместимостью кэша надуманны. Нужен просто нормальный конвертор из старых версий.

1. Откуда уверенность, что в предлагаемом формате нет изъянов? Ты уверен, что через непродолжительное время появятся предложения снова сменить формат кэша? Не хватало, чтобы мы начали путаться в этих форматах.
2. Кэш большой, поэтому само конвертирование может потребовать много времени и возможно наличия свободного места на диске.
3. Пользователи иногда обмениваются кэшами, что будет если кто-нибудь сольет кэши разных форматов?
И главное остается открытым вопрос: ради чего?
Автор: Taimael
Дата сообщения: 09.03.2006 05:09
mai62

столкнулся с необходимостью экспорта свежих файлов из кеша (разумеется, со всей структурой папок), скажем, за последнюю неделю

можно ли сделать в HC такую фишку?

Автор: DenZzz
Дата сообщения: 09.03.2006 06:12
mai62

А ответ для 403 Forbidden:
"Blocked
Access to the requested URL http://217.16.26.83/... was not allowed (rule #10)"

формирует сам HC?

Отсюда возникло предложение - сделать настройку "Показывать файл" на вкладке "Черный список" раздельной для картинок и "некартинок" (или сделать опцию "Только для "некартинок"), чтобы можно было заменять своим файлом только "некартинки", а картинки чтобы отображались стандартным "красным крестиком". Это удобно, например, чтобы можно было потом подгрузить отдельные картинки из контекстного меню "красного крестика", и не видеть сообщение, приведенное выше для "некартинок". Как отличить картинку от "некартинки" HC, видимо, знает - в Content-Type: image/ всегда правильные значения.

И еще, где можно найти "болванку blocked.html", про которую сказано в шапке? В полном архиве ее нет...
Автор: orphelin
Дата сообщения: 09.03.2006 08:50

Цитата:
Цитата:на компе1 где установлен НС все нормлально - открываю страницу, загружается без картинок, обновляю конкретную картинку с шифтом - появляется.
соседний комп использует прокси на комп1 и картинки никак не загружаются. только когда снимаю галку "разрешен" со страницы "5. только из кэша"

где я недоглядел?

Так и будет. Настройки НС действуют одинаково на все запросы независимо от того с какого компа они поступают. Видимо в Вашей ситуации придется отказаться от использования списка Только из кэша.
Другой вариант - запустить на компе1 две копии НС. Первая будет работать для раздачи инета на оба компа (разрешить только список Запись в кэш). Вторая копия НС на компе1 пусть обслуживает только юзера компа1 (здесь настройки списков по предпочтениям этого юзера, Запись в кэш выкл, использовать тот же кэш, что и первая копия НС в режиме только для чтения). На компе2 запустить НС, настроить на первую копию НС на компе1, настроить списки по предпочтениям этого юзера. Кэш можно организовать локальный или расшарить папку кэша компа1 (тогда выкл. список Запись в кэш).


дело в том что если картинка уже есть в кэше на компе1 (где установлен прокси), то и на второй комп она может загрузиться с шифтом. я подумал, если бы комп2 смог бы писать в кэш на компе1 то проблема бы решилась. только вот очень не хочется ставить какой либо дополнительный софт на комп2, если я поставлю папку с кэшем на полный доступ в сети и в настройках НС укажу путь к ней типа \\192.168.1.1\cache будут ли туда записываться новые файлы из сети и с компа1 и компа2? или тут я еще с какими то проблемами столкнусь?
Автор: arsvrn
Дата сообщения: 09.03.2006 09:11
Taimael

Цитата:
столкнулся с необходимостью экспорта свежих файлов из кеша (разумеется, со всей структурой папок), скажем, за последнюю неделю

Фишка такая не помешала бы. А пока можно так. В Total Commander'e заходишь в папку кеша, ставишь сортировку по дате, жмешь Ctrl-B, выделяешь файлы за нужный промежуток времени и архивируешь их в TAR (встроен в ТС). Получается архив с сохраненной структурой папок и только нужными файлами. Далее разархивируешь его в другой кеш с заменой файлов и все.
Автор: mai62
Дата сообщения: 09.03.2006 11:19
Taimael

Цитата:
столкнулся с необходимостью экспорта свежих файлов из кеша (разумеется, со всей структурой папок), скажем, за последнюю неделю

можно ли сделать в HC такую фишку?

Можно. Но преоритет будет отдаваться тем функциям, которые свойственны НС как прокси-серверу.

Цитата:
А ответ для 403 Forbidden:
"Blocked
Access to the requested URL http://217.16.26.83/... was not allowed (rule #10)"
формирует сам HC?

Да

Цитата:
Как отличить картинку от "некартинки" HC, видимо, знает - в Content-Type: image/ всегда правильные значения.

Дело в том, что Content-Type появляется уже при загрузке файла, а черный список как раз и блокирует саму эту загрузку.

Цитата:
И еще, где можно найти "болванку blocked.html", про которую сказано в шапке? В полном архиве ее нет...

Этот файл был в архиве HandyCache092b10hexe.zip
Вот содержимое этого файла

Цитата:
<HTML>
<HEAD>
<TITLE>Blocked</TITLE>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<!-- <META http-equiv="Refresh" content="3;/"> -->
<BODY>
Blocked by HandyCache.
</BODY>
</HTML>

orphelin

Цитата:
только вот очень не хочется ставить какой либо дополнительный софт на комп2

В таком случае придется отказаться от использования списка Только из кэша.

Цитата:
будут ли туда записываться новые файлы из сети и с компа1 и компа2?

Если на компе2 не будет НС, то кто будет писать в кэш?
Автор: DenZzz
Дата сообщения: 09.03.2006 13:37
mai62

Цитата:
Дело в том, что Content-Type появляется уже при загрузке файла, а черный список как раз и блокирует саму эту загрузку.

Понятно, а нельзя тогда создать опцию, чтобы заменять на свой файл только сообщения HC: "Blocked Access to the requested URL http://... was not allowed (rule #10)", а заблокированные картинки чтобы оставались "красными крестиками"? А то иногда такое сообщение рисуется на полстраницы - выглядит страшно, особенно, когда URL длинный и написан кодами символов...

Не добавлять же поле "Исключения для URL" для опции "Показывать файл" на вкладке "Черный список"!?

Или подскажи другой вариант, как выборочно подгрузить некоторые заблокированные картинки внутри страницы, не перезагружая всю страницу. Мне вспомнился только вариант с контекстным меню "красного крестика"...
Автор: VideoHEAD
Дата сообщения: 09.03.2006 13:44
Продолжаю вопросы философского плана.

Вопрос гуру HandyCache. Когда вы ставите "Запись в кэш" всего и вся - зачем это делать? Может лучше записывать только картинки, флэш, скрипты (то что в программе первыми галочками поставлено)? Попробовал записывать только графику со скриптами, вроде скорость и экономия сходная, не пишется дрянь типа архивов и мелких программ (не всегда же менеджером качать!). С другой стороны на модеме как то пришлось ждать, когда антивирь обновит базы - прогресс-бар застыл на полчаса... - посмотрел в монитор и все прекрасно видно, сколько этот застой в процентах еще будет продолжаться. Вообщем, может кто расскажет, есть ли смысл ставить запись в кэш всего подряд. И как потом выискивать и уничтожать ненужный мусор...
Автор: orphelin
Дата сообщения: 09.03.2006 14:14

Цитата:
Цитата:будут ли туда записываться новые файлы из сети и с компа1 и компа2?

Если на компе2 не будет НС, то кто будет писать в кэш?


вобще я так понимаю этим все должен заниматься НС на компе1 по запросам с компа2.
Автор: ALeXkRU
Дата сообщения: 09.03.2006 14:17

Цитата:
Вообщем, может кто расскажет, есть ли смысл ставить запись в кэш всего подряд.

скорее всего, это делается для работы (просмотра страниц) потом в офлайне
Автор: mai62
Дата сообщения: 09.03.2006 14:29
DenZzz

Цитата:
Понятно, а нельзя тогда создать опцию, чтобы заменять на свой файл только сообщения HC: "Blocked Access to the requested URL http://... was not allowed (rule #10)", а заблокированные картинки чтобы оставались "красными крестиками"?

Впиши свой html-файл вместо картинки.

Цитата:
Когда вы ставите "Запись в кэш" всего и вся - зачем это делать?

Чтобы иметь возможность погулять по сайтам в автономном режиме.
orphelin

Цитата:
вобще я так понимаю этим все должен заниматься НС на компе1 по запросам с компа2.

Он будет этим заниматься, если выключить список Только из кэша.
Если список оставить, то на компе1 можно нажав соотв. клавишу временно остановить работу этого списка и загрузить нужные картинки. На компе2 сколько ни жми любые клавиши НС на компе1 об этом не узнает.
Автор: faZZ
Дата сообщения: 09.03.2006 14:32
VideoHEAD
14:44 09-03-2006
Цитата:
Вообщем, может кто расскажет, есть ли смысл ставить запись в кэш всего подряд.

я все пишу в кэш, мало ли что понадобится при загрузке, экономия тем более места у меня много, еще 10 Гб на системе, а кэш всего 200 метров.
Автор: VideoHEAD
Дата сообщения: 09.03.2006 15:40
ALeXkRU

Цитата:
скорее всего, это делается для работы (просмотра страниц) потом в офлайне


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

faZZ

А как справляешься с мусором? Или тщательно прописываешь другие прокси качалкам и пр. ?
Автор: faZZ
Дата сообщения: 09.03.2006 15:53
VideoHEAD
смотря что считать с мусором. ну качаются картинки, флешки архивы лочатся. сам по сайтам чищу, по именам. Да и места у меня еще много
Автор: VideoHEAD
Дата сообщения: 09.03.2006 16:55
faZZ

ОК. Ясно. Вроде бы программа не имеет всяких ограничений по размеру кэша, есть смысл записывать все и вся. Интересно, сам автор и акулы типа C0USIN или unreal666 тоже все в кэш пишут?... Судя по тому, что прикручивают Архивариусы и так часто в кэше купаются - да.

Просто как-то unreal666 поведал о правиле связанным с imageshack и сказал чтобы в правилах "Запись в кэш" ставили особое исключение напротив картинок. Стало быть можно ставить галки не только напротив .*, но и других правил? И все это будет ОДНОВРЕМЕННО работать?
Автор: unreal666
Дата сообщения: 09.03.2006 17:11
VideoHEAD

Цитата:
Стало быть можно ставить галки не только напротив .*, но и других правил? И все это будет ОДНОВРЕМЕННО работать?

Что-то я не понял твоей мысли.
Если поставить галку на .*, то от остальных галок в списке толку не будет. (кроме преобразования и переадресации URL).
И в кеш я пишу не все, а только картинки, js, css и некоторые сайты полностью (в том числе и *.ru.board).
И еще советую в исключения для записи в кеш картинок поставить исключение dl\d+\.rapidshare\.de , чтобы не писались контрольные картинки с рапиды.
Автор: V0lt
Дата сообщения: 09.03.2006 17:51
D555

Цитата:
Так вот и нужно, чтобы форумы всегда узнавали пользователя по кукам в НС. Никогда не переставляли броузер?Пользуетесь несколькими?А так все кукисы для которых всегда приходилось вводить пароли уже под рукой и все сайты тебя знают.

Что то у меня большие сомнения, на счет возможности сохранения куков кроме как браузером. Они даже на сервере не лежат

OFFtopic
Чтобы перенести куки браузеров достаточно скопировать след. папки
Firefox - "C:\Documents and Settings\USER PROFILE\Application Data\Mozilla"
Opera - "C:\Documents and Settings\USER PROFILE\Application Data\Opera"

Куки IE лежат в "C:\Documents and Settings\USER PROFILE\Cookies", но заменить файл index.dat винда не даст (а без него остальные файлы IE не схавает). Что бы это сделать надо, закрыть все проги, запустить альтернативный файловый менеджер (TC, FAR), открыть диспетчер задач и грохнуть процес explorer.exe. Когда исчезнет "Пуск" , можешь копировать. Чтобы вернуть "Пуск" назад в Диспетчер задач->Файл->Новая задача (Выполнить...) набери explorer.

Добавлено:
C0USIN

Цитата:
Твой алгоритм споткнется на такой ситуации когда нам нужно записать файл /index.shtm/2006/03/06/197171 и уже существует файл /index.shtm
Простое добавление #_ в конец имени 197171 не решит проблемы.

Я же писал что в функции записи нет кода содания каталогов.
идея примерно такая

ForceDir(c:\CASHE\site.com\index.shtm\2006\03\06\) // видел подобную функцию
Если ошибка то
Проверяем наличие файлов c:\CASHE\site.com\index.shtm, c:\CASHE\site.com\index.shtm\2006, c:\CASHE\site.com\index.shtm\2006\03, c:\CASHE\site.com\index.shtm\2006\03\06
если файл будет найден переименовываем его name:=name+"#_"
потом либо опять ForceDir либо пошагово
Автор: unreal666
Дата сообщения: 09.03.2006 18:13
V0lt

Цитата:
Что бы это сделать надо, закрыть все проги, запустить альтернативный...

Может не прокатить. У меня допустим вообще нет процесса explorer (стоит aston), все равно не дает удалить. Пытался даже с помощью Unlocker'а разблокировать файл; разблокировать-то разблокировал, но все равно не удаляется.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: грабилка экрана под OpenGL


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.