Hello! On Wed, Dec 15, 2021 at 09:14:53AM +0200, Gena Makhomed wrote:
> On 15.12.2021 1:33, Maxim Dounin wrote: > > > Воспроизводится ли проблема на приведённом конфиге в чистом виде, > > без каких-либо других location'ов и/или rewrite'ов? Если да - то > > как выглядит минимальный конфиг, на котором проблема > > воспроизводится, полностью (nginx -T)? Что показывает nginx -V? > > Что в debug log'е? > > Воспроизводится на таком конфиге: > > # nginx -T > error_log /var/log/nginx/error.log debug; > events { use epoll; } > http { > server { > server_name example.com; > location / { proxy_pass http://127.0.0.1; } > location /download/ { proxy_pass http://127.0.0.2; } > } > } На таком конфиге - воспроизводиться должно, это штатное поведение. Явно документировано в описании директивы location (http://nginx.org/r/location/ru): : Если location задан префиксной строкой со слэшом в конце и запросы : обрабатываются при помощи proxy_pass, fastcgi_pass, uwsgi_pass, : scgi_pass, memcached_pass или grpc_pass, происходит специальная : обработка. В ответ на запрос с URI равным этой строке, но без : завершающего слэша, будет возвращено постоянное перенаправление с : кодом 301 на URI с добавленным в конец слэшом. Если такое : поведение нежелательно, можно задать точное совпадение URI и : location, например: ... Вопрос исключительно о том, почему, как утверждается в исходном сообщении, не срабатывает явно заданный location без завершающего слэша, в том числе с точным совпадением. -- Maxim Dounin http://mdounin.ru/ _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru