предполагается ли инициализация временных папок при вызове "nginx -t" ?
привет! беру чистый centos, ставлю nginx из стокового репозитория. в /var/cache/nginx - пусто. ожидаемо делаю "nginx -t", и уже не пусто. а вот это не очень ожидаемо было. почему так ? [root@centos system]# cd /var/cache/nginx/ [root@centos nginx]# ls [root@centos nginx]# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful [root@centos nginx]# ls client_temp fastcgi_temp proxy_temp scgi_temp uwsgi_temp [root@centos nginx]# Илья Шипицин ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: режим dry run для "return 421"
Да, так и сделаю. Спасибо On Tue, Dec 22, 2020, 11:22 PM Oleg A. Mamontov wrote: > On Tue, Dec 22, 2020 at 06:17:13PM +0500, Илья Шипицин wrote: > >грубо - сделать все то же самое, что было бы без "return 421" + > залогировать > >попытку вернуть. > >классический dry run > > Возможно, вам подойдет дополнительный access_log по условию: > --- > map $host $condition { > default 1; > some_condition 0; > } > ... > location / { >proxy_pass http://upstream; > >access_log /var/log/my.log; >access_log /var/log/conditional.log if=$condition; > } > --- > > >error_page 421 = @handler_421; > > > >location / { > > if ($some_condition != $host) { return 421; } > > > > proxy_pass http://upstream; > > > > access_log /var/log/my.log; > >} > > > >location @handler_421 { > > proxy_pass http://upstream; > > > > access_log /var/log/my.log; > > access_log /var/log/additional.log special_format; > >} > > > > > > > >On Tue, Dec 22, 2020, 5:32 PM Evgeniy Berdnikov wrote: > > > >On Tue, Dec 22, 2020 at 04:52:36PM +0500, Илья Шипицин wrote: > >>привет! > >>рассматриваем вариант > >>if ($some_condition != $host) { return 421; } > >>вопрос - как можно по дешевому в этом месте сделать "логирование > >вместо > >>return" ? > > > > return 302 > > ? > > > > Вообще, что значит "вместо"? Какой-то ответ на запрос должен быть. > > Логгирование это не ответ, а этап обработки запроса. > >-- > > Eugene Berdnikov > >___ > >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 > > > -- > Cheers, > Oleg A. Mamontov > > mailto: o...@mamontov.net > > skype: lonerr11 > cell: +7 (903) 798-1352 > ___ > 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: режим dry run для "return 421"
On Tue, Dec 22, 2020 at 06:17:13PM +0500, Илья Шипицин wrote: грубо - сделать все то же самое, что было бы без "return 421" + залогировать попытку вернуть. классический dry run Возможно, вам подойдет дополнительный access_log по условию: --- map $host $condition { default 1; some_condition 0; } ... location / { proxy_pass http://upstream; access_log /var/log/my.log; access_log /var/log/conditional.log if=$condition; } --- error_page 421 = @handler_421; location / { if ($some_condition != $host) { return 421; } proxy_pass http://upstream; access_log /var/log/my.log; } location @handler_421 { proxy_pass http://upstream; access_log /var/log/my.log; access_log /var/log/additional.log special_format; } On Tue, Dec 22, 2020, 5:32 PM Evgeniy Berdnikov wrote: On Tue, Dec 22, 2020 at 04:52:36PM +0500, Илья Шипицин wrote: > привет! > рассматриваем вариант > if ($some_condition != $host) { return 421; } > вопрос - как можно по дешевому в этом месте сделать "логирование вместо > return" ? return 302 ? Вообще, что значит "вместо"? Какой-то ответ на запрос должен быть. Логгирование это не ответ, а этап обработки запроса. -- Eugene Berdnikov ___ 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 -- Cheers, Oleg A. Mamontov mailto: o...@mamontov.net skype: lonerr11 cell: +7 (903) 798-1352 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: режим dry run для "return 421"
вт, 22 дек. 2020 г. в 19:58, Evgeniy Berdnikov : > On Tue, Dec 22, 2020 at 06:17:13PM +0500, Илья Шипицин wrote: > >грубо - сделать все то же самое, что было бы без "return 421" + > >залогировать попытку вернуть. > >классический dry run > >error_page 421 = @handler_421; > >location / { > > if ($some_condition != $host) { return 421; } > > proxy_pass http://upstream; > > access_log /var/log/my.log; > >} > >location @handler_421 { > > proxy_pass http://upstream; > > access_log /var/log/my.log; > > access_log /var/log/additional.log special_format; > >} > > Какой же он "dry" если в хендлере есть то же самое обращение апстриму? > изначально у меня вот так location / { proxy_pass http://upstream; } я хочу добавить if ($some_condition != $host) { return 421; } в режиме, в котором поведение не поменяется, но я убеждусь, что конструкция будет срабатывать ровно тогда, когда я имею в виду > Тут просто добавочное логгирование... И статус чисто внутренний, он может > быть любой, не обязательно 421. Тогда чем этот паровоз не устраивает? > с POST-ами есть вопросы. ну и вообще конструкция громоздкая. > > > >On Tue, Dec 22, 2020, 5:32 PM Evgeniy Berdnikov <[3]b...@protva.ru> > wrote: > > > > On Tue, Dec 22, 2020 at 04:52:36PM +0500, Илья Шипицин wrote: > > >привет! > > >рассматриваем вариант > > >if ($some_condition != $host) { return 421; } > > >вопрос - как можно по дешевому в этом месте сделать > "логирование > > вместо > > >return" ? > > > > return 302 > > ? > > > > Вообще, что значит "вместо"? Какой-то ответ на запрос должен быть. > > Логгирование это не ответ, а этап обработки запроса. > > -- > > Eugene Berdnikov > > ___ > > nginx-ru mailing list > > [4]nginx-ru@nginx.org > > [5]http://mailman.nginx.org/mailman/listinfo/nginx-ru > > > > References > > > >Visible links > >1. http://upstream/ > >2. http://upstream/ > >3. mailto:b...@protva.ru > >4. mailto:nginx-ru@nginx.org > >5. http://mailman.nginx.org/mailman/listinfo/nginx-ru > > > ___ > > nginx-ru mailing list > > nginx-ru@nginx.org > > http://mailman.nginx.org/mailman/listinfo/nginx-ru > > > -- > Eugene Berdnikov > ___ > 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: режим dry run для "return 421"
On Tue, Dec 22, 2020 at 06:17:13PM +0500, Илья Шипицин wrote: >грубо - сделать все то же самое, что было бы без "return 421" + >залогировать попытку вернуть. >классический dry run >error_page 421 = @handler_421; >location / { > if ($some_condition != $host) { return 421; } > proxy_pass http://upstream; > access_log /var/log/my.log; >} >location @handler_421 { > proxy_pass http://upstream; > access_log /var/log/my.log; > access_log /var/log/additional.log special_format; >} Какой же он "dry" если в хендлере есть то же самое обращение апстриму? Тут просто добавочное логгирование... И статус чисто внутренний, он может быть любой, не обязательно 421. Тогда чем этот паровоз не устраивает? >On Tue, Dec 22, 2020, 5:32 PM Evgeniy Berdnikov <[3]b...@protva.ru> wrote: > > On Tue, Dec 22, 2020 at 04:52:36PM +0500, Илья Шипицин wrote: > > привет! > > рассматриваем вариант > > if ($some_condition != $host) { return 421; } > > вопрос - как можно по дешевому в этом месте сделать "логирование > вместо > > return" ? > > return 302 > ? > > Вообще, что значит "вместо"? Какой-то ответ на запрос должен быть. > Логгирование это не ответ, а этап обработки запроса. > -- > Eugene Berdnikov > ___ > nginx-ru mailing list > [4]nginx-ru@nginx.org > [5]http://mailman.nginx.org/mailman/listinfo/nginx-ru > > References > >Visible links >1. http://upstream/ >2. http://upstream/ >3. mailto:b...@protva.ru >4. mailto:nginx-ru@nginx.org >5. http://mailman.nginx.org/mailman/listinfo/nginx-ru > ___ > nginx-ru mailing list > nginx-ru@nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru -- Eugene Berdnikov ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: режим dry run для "return 421"
грубо - сделать все то же самое, что было бы без "return 421" + залогировать попытку вернуть. классический dry run error_page 421 = @handler_421; location / { if ($some_condition != $host) { return 421; } proxy_pass http://upstream; access_log /var/log/my.log; } location @handler_421 { proxy_pass http://upstream; access_log /var/log/my.log; access_log /var/log/additional.log special_format; } On Tue, Dec 22, 2020, 5:32 PM Evgeniy Berdnikov wrote: > On Tue, Dec 22, 2020 at 04:52:36PM +0500, Илья Шипицин wrote: > >привет! > >рассматриваем вариант > >if ($some_condition != $host) { return 421; } > >вопрос - как можно по дешевому в этом месте сделать "логирование > вместо > >return" ? > > return 302 > ? > > Вообще, что значит "вместо"? Какой-то ответ на запрос должен быть. > Логгирование это не ответ, а этап обработки запроса. > -- > Eugene Berdnikov > ___ > 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: режим dry run для "return 421"
On Tue, Dec 22, 2020 at 04:52:36PM +0500, Илья Шипицин wrote: >привет! >рассматриваем вариант >if ($some_condition != $host) { return 421; } >вопрос - как можно по дешевому в этом месте сделать "логирование вместо >return" ? return 302 ? Вообще, что значит "вместо"? Какой-то ответ на запрос должен быть. Логгирование это не ответ, а этап обработки запроса. -- Eugene Berdnikov ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
режим dry run для "return 421"
привет! рассматриваем вариант if ($some_condition != $host) { return 421; } вопрос - как можно по дешевому в этом месте сделать "логирование вместо return" ? Илья Шипицин ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Проблема при проксировании на nginx с ssl reject handshake on
Сам себе отвечу :) На Сервер1 не хватало строки: proxy_ssl_name $host; Posted at Nginx Forum: https://forum.nginx.org/read.php?21,290260,290261#msg-290261 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Проблема при проксировании на nginx с ssl reject handshake on
Сервер1 (принимает запросы и проксирует на сервер 2): server { listen a.b.c.d:443 ssl; server_name abcd.example ; access_log off; ssl_certificate path_to.crt; ssl_certificate_key path_to.key; location / { proxy_pass https://b.c.d.e:443; proxy_ssl_server_name on; proxy_set_header Host $host; } } Сервер2 server { listen b.c.d.e:443 ssl default_server; server_name _; access_log off; ssl_certificate /usr/local/nginx/conf/cert.pem; ssl_certificate_key /usr/local/nginx/conf/key.pem; ssl_reject_handshake on; location / { return 444; } } server { listen b.c.d.e:443 ssl http2; server_name abcd.example ; access_log access.log combined; root /home2/xyz/abcd.example/WWW; ssl_certificate path_to.crt; ssl_certificate_key path_to.key; ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate path_to.trusted; location / { proxy_pass http://127.0.0.1:80; } } Если на Сервер2 ssl_reject_handshake on;, то запросы к Сервер 1 завершаются 502 ошибкой. В error лог такое: 2020/12/22 11:05:13 [crit] 57654#0: *13192673 SSL_do_handshake() failed (SSL: error:14094458:SSL routines:ssl3_read_bytes:tlsv1 unrecognized name:SSL alert number 112) while SSL handshaking to upstream, client: 192.168.10.250, server: abcd.example, request: "GET / HTTP/2.0", upstream: "https://b.c.d.e:443/;, host: "xn--b1aghahdtcfeb2aifj5e.xn--p1ai" Наличие строк proxy_ssl_server_name on; proxy_set_header Host $host; в конфиге server на Сервер1 никак не влияет на проблему. В чем может быть дело? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,290260,290260#msg-290260 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru