HandyCache (HC) - это прокси-сервер для раздачи интернета в локальной сети дома, в учебном заведении или на малом предприятии. Кроме этого, HC можно запустить на том же компьютере, на котором Вы работаете. В этом случае Вы сможете ускорить загрузку страниц в браузере, экономить трафик и деньги на его оплату, заблокировать загрузку и отображение рекламы. Это далеко не все, в чем может помочь наш прокси-сервер. С его помощью можно будет просматривать ранее загруженные страницы без подключения к сети интернет, переносить кэш с одного компьютера на другой, подключаться к разным серверам через разные внешние прокси и многое другое.
HC позволяет писать свои расширения на языке lua, которые значительно расширяют возможности по изменению поведения прокси в соответствии c желанием пользователя.
Для установки и использования программы не требуется специальная подготовка в области сетевого администрирования. Достаточно навыков продвинутого пользователя персонального компьютера. Чтобы оценить HandyCache в работе, нужно скачать архив, распаковать его на диск и запустить на выполнение файл HandyCache.exe. Далее нужно настроить браузер на работу через прокси-сервер. Для начала работы этого достаточно. Настройки, установленные в НС по умолчанию, подходят в большинстве случаев, а для тонкой настройки следует ознакомиться с Руководством по настройке. Дома при условии подключения до пяти пользователей программу можно использовать бесплатно. Для коммерческого использования (на предприятии, в организации) или при количестве пользователей более пяти нужно купить лицензию.
Возможно до сих пор Вы и понятия не имели о том, что
такое прокси-сервер и для чего он может быть нужен?. Или просто не
задумывались об этом. Некоторое время назад я создал на форуме тему "Так
ли уж нужен кэширующий прокси-сервер?", приглашаю Вас познакомиться с размышлениями пользователей по этому поводу.
Скрипты в HandyCache RC1
Автор Rick
30.12.2007 г.
Поддержка скриптового языка Lua в HandyCache RC1
Добавлена поддержка скриптового языка для обработки заголовков ответов.
В HandyCache RC1 c помощью скриптов можно обрабатывать заголовки ответов удаленного сервера на запросы HC и выбирать одно из действий:
остановить загрузку;
остановить загрузку с сервера и загрузить из кэша;
сохранить в кэш;
изменить заголовок ответа.
не выполнять никаких действий;
Чтобы опробовать работу скриптов, необходимо скачать zip-архив и распаковать его в папку НС.
Подробное описание см. ниже.
На данный момент скрипты в HandyCache могут использоваться для обработки ответов сервера.
Для начала использования скриптов в HandyCache необходимо:
в папке HC должны находиться файлы lua5.1.dll и lua.lst (из архива hc_script.zip);
скрипты должны храниться в подкаталоге \lua;
в список серверов-посредников добавить строку (использовать команду Добавить из буфера):
В списке серверов-посредников может быть несколько строк с файлами-списками для скриптов.
В файле lua.lst должны быть строки вида:
rule <script=lua\scriptname.lua>
здесь rule - правило, при его выполнении будет работать скрипт из файла lua\scriptname.lua.
Правило может представлять из себя регулярное выражение (признак регулярного выражения - символ # в первой позиции строки) или просто строку символов. Во втором случае заданная строка ищется в URL запроса и если таковая найдена, то правило считается выполненным.
Если в первой позиции строки стоит символ !, то правило считается исключением. Если выполняется исключение, то все правила, расположенные ниже этого исключения, пропускаются до конца файла или строки <new_block>.
Все скрипты, соответсвующие сработавшим правилам, будут запущены НС в том порядке, в котором они расположены в файле-списке.
При выполнении скрипта HC всегда ищет и запускает функцию main.
Скрипт может использовать предопределенные глобальные переменные:
hc_header - заголовок, передаваемый скрипту;
hc_cache_file_size - длина файла в кэше (-1 если файла нет);
hc_action - действие, которое должен выполнить НС:
save - записать тело в кэш;
stop - остановить загрузку тела ответа;
dont_update - прервать загрузку с сервера и передать клиенту файл из кэша.
hc_url - URL запроса;
hc_method - метод, использованный в запросе;
если скрипт изменяет заголовок, то он помещает результат в эту же переменную - в этом случае он должен присвоить переменной hc_header_replace значение true;
Пример скрипта находится в файле first.lua.
Если запускается несколько скриптов подряд, то очередному скрипту передаются глобальные переменные в том виде, в каком они остались после выполнения предыдущего скрипта.
После выполнения последнего скрипта НС выполняет действие, заданное в переменной hc_action.
Информацию о языке Lua можно найти, например, здесь: english или по-русски
В файле LuaTest.exe находится программа для тестирования работы скриптов.