<div dir="ltr"><div dir="ltr">Максим, спасибо огромное! В итоге это именно то, что я и хотел получить.</div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br><br>---------- Forwarded message ----------<br>From: Maksim Kulik <<a href="mailto:kulmaks@gmail.com" target="_blank">kulmaks@gmail.com</a>><br>To: <a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>Cc: <br>Bcc: <br>Date: Mon, 27 Jul 2020 09:54:02 +0300<br>Subject: Re: Возможно ли остановить выполнение правил внутри location/выйти из location<br><div dir="ltr"><div>Можно после if делать внутренний редирект на другой локейшен (если, конечно, в вашем случае нет какой-то сложной дальнейшей обработки и вас интересует только то, что записано в location / ) при помощи error_page. То есть:</div><div><br></div><div>error_page 420 = @special_location;</div><div><br></div><div>location /test/lfs_lock_test.git/info/lfs/locks{<br> if ( $args ~ "lockservice=true" ) {<br>  return 420;<br>  }<br> rewrite ^/test/lfs_lock_test.git/(.*) /$1 break;<br> proxy_pass <a href="https://localhost:5002" target="_blank">https://localhost:5002</a>;<br> access_log  /var/log/gitlab/nginx/lfs_lock_access.log gitlab_access;<br> error_log   /var/log/gitlab/nginx/lfs_lock_error.log debug;<br>}<br></div><div dir="ltr"><div><br></div><div>location @special_location {</div><div>    proxy_cache off;<br>    proxy_pass  <a href="http://gitlab-workhorse" target="_blank">http://gitlab-workhorse</a>;<br></div><div>}</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">пн, 27 июл. 2020 г. в 09:16, Роман Буренков <<a href="mailto:panzercheg@gmail.com" target="_blank">panzercheg@gmail.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><div>А какая была бы более правильная логика? Я изначально хотел сделать 2 правила с (?)(?!) но почему в таком regex`е у меня всё равно не тот url, что я хотел просачивался в location (  location ~ (?^/.*.git/info/lfs/locks$)(?!^.*&lockservice=true$))</div><div class="gmail_quote"><div dir="ltr" class="gmail_attr"><br></div></div></div></blockquote></div></div></blockquote></div></div>