Синтаксис, похожий на нотацию, для запуска процесса может быть, например, текстом
загрузите шаблон!somefile.ext где-нибудь на странице. Последующий рендеринг ссылки
легко достигается путем преобразования шаблона Upload: в обычную ссылку http:
1
42
НАСТРОЙКА ВАШЕЙ ВИКИ
указывая на файл при сохранении страницы. Перед этим, однако, диалоговое окно для загрузки
файл должен быть вызван, чтобы файл существовал на месте.
# -v- загрузка и связывание файлов, несколько экземпляров
$FileLocation = '\$wiki/файлы/ 1 ;
локальный usr-файл; мой $фл;
мой @uplUrl; мой $upl = 0;
в то время как ( s/(Загрузить!)(\S+)/$mark$upl$mark/ ) {
$usrФайл = $2;
(&ЗагрузитьФайл($usrФайл));
? $f1 = $FileLocation
: $fl = 'Загрузить!'; # разрешить повторную попытку, если загрузка не удалась
$uplUrl[$upl++] = $f1 . $usrFile
}
$упл = 0 ;
в то время как ( s/$mark$upl$mark/$nfyUrl[$nfy++]/
) { }
Теперь загрузка файла через клиентский браузер может показаться странной, но это обычное дело.
решение, например, на многих бесплатных сайтах веб-хостинга, которые не предоставляют FTP
доступ, и это освобождает пользователя от необходимости настраивать и запускать второй
приложение для (аутентифицированной) передачи файлов, например FTP-клиент. Маленький жемчуг
модуль может это выполнить, и это ядро подпрограммы &upioadFiie(),
описано в главе 8.
Еще раз, предупреждение безопасности в порядке. Администратор вики должен убедиться
другими способами, что загрузка осуществляется аутентифицированным пользователем, если разрешение на это есть
проблема. Во-вторых, предоставление посетителям доступа к загруженным извне файлам может представлять угрозу безопасности.
риски для них, если файлы не были проверены и признаны безопасными.
ГЛАВА
7
Вики
Компоненты
Осмотрен
Теперь пришло время покопаться в коде QuickiWiki, чтобы действительно понять, что такое
продолжается. Прочтите эту главу с ее подробными пояснениями, если вы намереваетесь
серьезные модификации базовой функциональности QuickiWiki, изменения, выходящие за рамки
приемы, предложенные в предыдущей главе. Обычно вы можете пропустить подразделы, которые лежат
вне того, что вы хотите изменить, потому что код очень модульный.
степень.