Максим, спасибо огромное! В итоге это именно то, что я и хотел получить.
> > > ---------- Forwarded message ---------- > From: Maksim Kulik <kulm...@gmail.com> > To: nginx-ru@nginx.org > Cc: > Bcc: > Date: Mon, 27 Jul 2020 09:54:02 +0300 > Subject: Re: Возможно ли остановить выполнение правил внутри > location/выйти из location > Можно после if делать внутренний редирект на другой локейшен (если, > конечно, в вашем случае нет какой-то сложной дальнейшей обработки и вас > интересует только то, что записано в location / ) при помощи error_page. То > есть: > > error_page 420 = @special_location; > > location /test/lfs_lock_test.git/info/lfs/locks{ > if ( $args ~ "lockservice=true" ) { > return 420; > } > rewrite ^/test/lfs_lock_test.git/(.*) /$1 break; > proxy_pass https://localhost:5002; > access_log /var/log/gitlab/nginx/lfs_lock_access.log gitlab_access; > error_log /var/log/gitlab/nginx/lfs_lock_error.log debug; > } > > location @special_location { > proxy_cache off; > proxy_pass http://gitlab-workhorse; > } > > пн, 27 июл. 2020 г. в 09:16, Роман Буренков <panzerc...@gmail.com>: > >> >> А какая была бы более правильная логика? Я изначально хотел сделать 2 >> правила с (?)(?!) но почему в таком regex`е у меня всё равно не тот url, >> что я хотел просачивался в location ( location ~ >> (?^/.*.git/info/lfs/locks$)(?!^.*&lockservice=true$)) >> >>
_______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru