Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Пара вопро сов о nginx
Хочу сделать небольшой архив файлов, но помимо индекса файлов нужны описания и
скриншоты. Никакие php-цмски не хочу юзать, perl тоже не хочется
использовать. Немного модифицировал autoindex с закосом на lighttpd и
возможностью вставлять свои куски текста в страничку. Но появились некоторые
трудности. Почему при такой конфигурации:
if (-e $request_filename/.description.txt) {
autoindex_readme_path .description.txt;
}
if (-e $request_filename/.cover.jpg) {
autoindex_readme_text ""; autoindex_footer_text "";
}
присваиваются значения для параметров только в последнем if? Т.е.
autoindex_readme_path получается пустой, хотя если удалить второй if с
содержимым - всё путём. Попытался это обойти с помощью нескольких условий, типа
такого:
set $found 0;
if (-e $request_filename/.cover.jpg && -e $request_filename/.description.txt) {
param1=x;
param2=y;
set $found=1;
}
if (-e $request_filename/.cover.jpg && $found = 0) {
param1=x;
}
if (-e $request_filename/.description.txt && $found = 0) {
param2=y;
}
Но опять же столкнулся с тем, что OR/AND похоже не поддерживаются, как и скажем
else. Планируется ли добавить такую поддержку?
Также вопрос: а как можно приравнивать параметр к переменной? Т.е.
что-то типа:
set $param "123";
autoindex_readme_text $param;
Хочется чтобы значение autoindex_readme_text получилось 123, а получается
$param :-/
Возможно кто-то писал модули, может подскажете, а как правильно, с точки зрения
всех прослоек работы с файлами, кешированием и прочим, имея путь до файла в
ngx_str_t получить содержимое файла, скажем в другой ngx_str_t? Я так понял
копать нужно в сторону ngx_open_cached_file, но что-то пока не получается.
Также видел в рассылке за 2005 год сообщения о том, что неплохо бы реализовать
переменную $request_dir, содержащую имя папки запроса, но я так понял дело
до реализации не дошло?
ЗЫ. Пока всё сделал забивая все описания в конфиг, разграничивая location`ами,
но это и не удобно и некошерно. Получилось так:
http://nosferatu.pp.ru/nginx_autoindex-nsf.png
На вид как и хотел, но внутренняя организация ужасно не нравится.
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,16580,16580#msg-16580
|