Welcome! Log In Create A New Profile

Advanced

Re: Переменная с именем файла

August 14, 2012 02:36PM
On Tuesday 14 August 2012 22:15:56 Михаил Монашёв wrote:
> Здравствуйте.
>
> > Делается запрос к http://site.ru/path/file.ext?arg=value .
> >
> > Скажите пожалуйста, в какой внутренней переменной nginx-а будет
> > храниться имя файла с расширением, т.е. "file.ext" .
> >
> > $request_filename хранит путь, а мне нужно только имя файла. Хочу
> > выдать заголовок через add_header примерно так:
> >
> > add_header Content-Disposition 'attachment; filename="Prefix
> > $filename"';
>
> попробовал как временное решение так:
>
> map $request_filename $filename {
> default "";
> "~*([^/]+)\.(gif|jpe?g|png).*?$" " $1.$2";
> }
>
> и сделал запрос к site.ru/path/1.png.
>
> в $filename записалось " $1.$2" вместо ожидаемых " 1.png" . Что я
> сделал не так?

1. В правой части можно использовать только одну переменную или строку.
2. Позиционные выделения в map не поддерживаются.

Правильно:

map $request_filename $filename {
default "";
"~*(?<fn>[^/]+\.(?:gif|jpe?g|png))$" $fn;
}

--
Валентин Бартенев
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Переменная с именем файла

Михаил Монашёв August 14, 2012 01:10PM

Re: Переменная с именем файла

Михаил Монашёв August 14, 2012 02:18PM

Re: Переменная с именем файла

VBart August 14, 2012 02:36PM

Re[2]: Переменная с именем файла

Михаил Монашёв August 14, 2012 03:02PM

Re: Переменная с именем файла

VBart August 14, 2012 03:52PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 191
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready