Re: разный expires для расширений и без location

2016-01-26 Пенетрантность Maxim Dounin
Hello!

On Tue, Jan 26, 2016 at 03:37:54PM +0200, Alex Domoradov wrote:

> А почему переменную нельзя использовать как имя хедера в директиве
> add_header?
> 
> При
> 
> Location =/test.html {
>add_header $http_debug 'L1';
> }
> 
> получаю такое
> 
> Content-Length: 168
> Connection: keep-alive
> $http_debug: L1

Потому что в названии заголовка переменные не поддерживаются.  
Места, где можно использовать переменные, явно указаны в 
документации.

http://nginx.org/ru/docs/http/ngx_http_headers_module.html#add_header

"Синтаксис: add_header имя значение [always];"
"... В значении можно использовать переменные. ..."

Если нужно, чтобы какие-то заголовки добавлялись не всегда - 
используйте пустое значение в тех случаях, когда данный заголовок 
добавлять не надо.

-- 
Maxim Dounin
http://nginx.org/

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: разный expires для расширений и без location

2016-01-26 Пенетрантность Alex Domoradov
А почему переменную нельзя использовать как имя хедера в директиве
add_header?

При

Location =/test.html {
   add_header $http_debug 'L1';
}

получаю такое

Content-Length: 168
Connection: keep-alive
$http_debug: L1

2016-01-26 15:06 GMT+02:00 Maxim Dounin :

> Hello!
>
> On Tue, Jan 26, 2016 at 07:24:38AM -0500, itcod wrote:
>
> > Максим спасибо.
> > Подскажите пожалуйста области действия команды map в конфигах
> > А то ставил и в location и в server секции, и кругом получаю
> > [emerg] map directive is not allowed here
> > Неужели "это счастье" можно применять только в глобальном масштабе (в
> секции
> > http)?
>
> Директивы map задаются на уровне http - т.к. директива создаёт
> переменную со своей функцией обработки, а пространство переменных
> в nginx'е одно.
>
> Это, кстати, явно указано в документации,
> http://nginx.org/ru/docs/http/ngx_http_map_module.html#map:
>
> Контекст: http
>
> Использовать получившуюся переменную можно везде.
>
> --
> Maxim Dounin
> http://nginx.org/
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: разный expires для расширений и без location

2016-01-26 Пенетрантность Maxim Dounin
Hello!

On Tue, Jan 26, 2016 at 07:24:38AM -0500, itcod wrote:

> Максим спасибо.
> Подскажите пожалуйста области действия команды map в конфигах
> А то ставил и в location и в server секции, и кругом получаю
> [emerg] map directive is not allowed here
> Неужели "это счастье" можно применять только в глобальном масштабе (в секции
> http)? 

Директивы map задаются на уровне http - т.к. директива создаёт 
переменную со своей функцией обработки, а пространство переменных 
в nginx'е одно.

Это, кстати, явно указано в документации,
http://nginx.org/ru/docs/http/ngx_http_map_module.html#map:

Контекст: http

Использовать получившуюся переменную можно везде.

-- 
Maxim Dounin
http://nginx.org/

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: разный expires для расширений и без location

2016-01-26 Пенетрантность itcod
Максим спасибо.
Подскажите пожалуйста области действия команды map в конфигах
А то ставил и в location и в server секции, и кругом получаю
[emerg] map directive is not allowed here
Неужели "это счастье" можно применять только в глобальном масштабе (в секции
http)? 

Спасибо.

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,264076,264130#msg-264130

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: разный expires для расширений и без location

2016-01-25 Пенетрантность Maxim Dounin
Hello!

On Sat, Jan 23, 2016 at 05:37:19AM -0500, itcod wrote:

> Добрый день уважаемые!
> Подскажите существует ли метод назначать разные expires для разных
> расширений файлов без использования разных location для этого. Знаю что в if
> не обернуть. Есть ли альтернатива?

http://nginx.org/ru/docs/http/ngx_http_headers_module.html#expires

: В значении последнего параметра можно использовать переменные 
: (1.7.9)

Там же есть пример, как ставить expires в зависимости от типа 
ответа.

-- 
Maxim Dounin
http://nginx.org/

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

разный expires для расширений и без location

2016-01-24 Пенетрантность itcod
Добрый день уважаемые!
Подскажите существует ли метод назначать разные expires для разных
расширений файлов без использования разных location для этого. Знаю что в if
не обернуть. Есть ли альтернатива?

Ситуация побробнее:
Существует location в котором установлены различные lua обработчики и
переменные. И очень не хотелось бы плодить одно и тоже в разных location
только из за пары ключей expires и кэшконтроля.

Пример location который очень не хочется плодить, так как в дальнейшем
сложно будет отслеживать изменения конфиг множества подобий. 

location / {
limit_req   zone=itcod  burst=200 nodelay;
limit_rate  2048k;
set $auth_dav private; #none/private
access_by_lua_file /etc/nginx/lua/auth-dav.lua;
dav_methods PUT DELETE MKCOL COPY MOVE;
dav_ext_methods PROPFIND OPTIONS;
create_full_put_path on;
dav_access user:rw group:rw;
client_body_temp_path /opt/itcod-dav.tmp/;
client_max_body_size 0;
autoindex on;
root $dir;
header_filter_by_lua_file /etc/nginx/lua/itcod-exchange.lua;
set $md5index on; #on/off nil=off # вкл/выкл обработчик
set $md5index_hash md5; #none/md5/md4/sha1/sha/ripemd160 nil=none # тип
выводых хэшей
set $md5index_size 5; #kb nil=unlimit # не считать для файлов более 
N
kb
set $md5index_path on; #on/off nil=off  # заменять относительный путь
ссылок на полный URI
set $md5index_nonblank on; #on/off nil=off # заменить множественные 
пробелы
одним
set $md5index_type on; #on/off nil=off # добавит в строки описание типа
file/directory/etc...
set $md5index_ico http://ihome.itcod.com/max/projects/libs/icons16ext/; 
#
путь к библиотека иконок
set $md5index_icopref icon-; # префикс имени файла иконки
#set $md5index_icosuf -icon; # суфикс имени файла иконки
set $md5index_icoext .gif; # расширение файла иконки
set $md5index_win _blank; # target window for !winext! files
set $md5index_winext htm.html.txt; # file extension for target windows
body_filter_by_lua_file /etc/nginx/lua/md5index.lua; # addon
обработчик

}

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,264076,264076#msg-264076

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru