Re: разный expires для расширений и без location
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
А почему переменную нельзя использовать как имя хедера в директиве 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
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
Максим спасибо. Подскажите пожалуйста области действия команды 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
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
Добрый день уважаемые! Подскажите существует ли метод назначать разные 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