Re[2]: if нужен.
Михаил Монашёв
postmaster at softsearch.ru
Wed Aug 15 11:19:19 UTC 2012
Здравствуйте, Maxim.
>> В конфиге есть строчка.
>> add_header Content-Disposition 'attachment; filename="bla-bla-bla"';
>>
>> Для одних хостов её надо выдавать, а для других не нужно. Хосты
>> отличаются только этой строчкой в конфиге. Дабы не разводить копипасту
>> попробовал написать add_header внутри if(). Оказалось, что add_header
>> в if-е не поддерживается. :-( Других способов, кроме if-а я не смог
>> придумать.
> Поддерживается. Другой вопрос, что результат может быть не совсем
> такой, как хотелось бы, см. http://wiki.nginx.org/IfIsEvil.
> Но правильно, IMHO, как-то так:
> map $host $disposition {
> default "";
> example.org 'attachment; filename="bla-bla-bla"';
> }
А как сюда ---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
подставить переменную?
Написал вот так:
map $http_host $disposition {
hostnames;
default "";
d.* 'attachment; filename="$sitename$filename"';
}
В результате в заголовке выдалась строка
Content-Disposition: attachment; filename="$sitename$filename"
а значения переменных не подставились. Через set надо это делать?
> add_header Content-Disposition $disposition;
--
С уважением,
Михаил mailto:postmaster at softsearch.ru
Подробная информация о списке рассылки nginx-ru