Исходный код: * webcmd-0.5-nix.gz (2003-02-05 18:34:50/2744/319)
* webcmd-0.6-win.zip (2003-02-18 11:02:15/6651/331)
Описание
Программа представляет собой файловый менеджер, работающий поверх протокола HTTP. Предусматривает возможность выполнения команд как интерактивно (посредством WEB-интерфейса), так и программно (с помощью дополнительного клиентского perl-пакета). Клиентская часть генерируется самой программой и может быть получена в виде файла по запросу (выполняется только интерактивно), что позволяет получать всегда совместимую клиентскую часть.
В целях безопасности в программу "зашит" путь директории, которая воспринимается как корневая. Это значение может быть изменено администратором (т.е. человеком, разместившим скрипт). Прозрачная структура исходного кода в целях безопасности или за ненадобностью позволяет отключать команды серверной части. Благодаря этому программа может быть использована не только как средство автоматизации рутинных операций, но и как механизм доступа к публичным данным (репозитариям, резервациям).
Основной упор сделан на надёжность передачи данных и минимизацию трафика, что важно как для медленных и ненадежных модемных соединений, так и для быстрых, где важен объем информации. Настоящая версия (0.6) позволяет
* Получать подробный листинг директории с возможностью рекурсивного обхода подкаталогов
* Создавать и удалять каталоги
* Загружать и выгружать файлы
* Корректно работать с большими бинарники
* Загружать файлы perl-скриптов (определяются расширением) с изменением первой строки (путь к интерпретатору) а так же текстовые с приведением к системному переводу строки
Требования
* Модули
o CGI
o HTTP::Request::Common (LWP)
o LWP::UserAgent (LWP)
o IO::Handle
o Digest::MD5
* Windows
o AS perl 5.6.1 build 635 или старше (ВАЖНО для корректной работы LWP!)
Планы
* Подсчет трафика
* Компрессия данных
* Фрагментация больших файлов
* Сопряжение версий протоколов
* Отбор файлов по регэкспам
История изменений
2003-02-18
* Исправлен баг Out of memory при работе с большими файлами.
* Сокращен расход памяти.
* Клиентская часть генерируется автоматически и может быть получена посредством интерфейса.
* Модуль разбит на составные пакеты.
* Добавлен пакет webutils с пробными функциями зеркалирования.
* Изменился принцип формирования страниц помощи и формы (наконец то избавился от кривого хелпа).
2003-02-05
* Команда LIST, при передаче в качестве ARG2 непустого значения, выводит список содержимого вложенных директорий.
* Для облегчения работы заюзан модуль IO::Handle.
* Для корретного расчета контрольных сумм perl-пакетов в раздел txt типа файлов добавлено расширение ".pm".