ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nginx-1.3.1


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: nginx-1.3.1
  • From: "ruv" <nginx-forum@xxxxxxxx>
  • Date: Mon, 17 Sep 2012 11:19:02 -0400
  • Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tigger.jlkhosting.com; s=x; h=Date:Sender:From:References:In-Reply-To:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=oQ7fzMbXohdWja9ZC5A5Y3hkXFpu5XG4cZwqYHX1Q50=; b=a6yLwCAPE9nl2gShrW3KhwQMNPsp5sS81uSLOg1VPhKveoFeRM2Ic7wbujFGsPgLhJIXwGlIwTyN45EMTtYusQ7cMhveB2hqWbPQf1q0P0Su8hCkWkaBMf7Utiv46NyQ;
  • In-reply-to: <20120917111543.GZ40452@mdounin.ru>
  • References: <20120917111543.GZ40452@mdounin.ru>

День добрый!

> > >     *) Безопасность: теперь nginx/Windows игнорирует точку в конце
> > >        компонента URI и не разрешает URI, содержащие
> > > последовательность ":$".
> 
> Да, это связано именно с этим изменением.  Под windows точка в 
> конце любого имени файла/каталога - не значащая, и такие uri нужно 
> либо отвергать, либо нормализовывать.  В противном случае имеем 
> возможность обхода ограничений доступа.  До 1.3.1 делалось 
> нормализация только для последнего компонента пути, сейчас - для 
> всех.

Дело еще в том, что ведь далеко не каждый URI отображается на файловую
систему.
Поэтому, я думаю, при передаче бэкенду допустимо проводить нормализацию
только если специально указано в конфиге (как например merge_slashes).
Понимаю, тут возникает трудность в реализации. В location ведь сейчас
сопоставляется нормализованный URI.  Может быть тогда эту нормализацию тоже
опцией отключать (будет полная аналогия merge_slashes)?


> Если нужно проксировать без нормализации uri (в предположении, что 
> бекенд сам справится с этой проблемой, и/или он не на виндах) - 
> должно помочь написание директивы proxy_pass без URI, i.e.
> 
>     proxy_pass http://backend;
> 
> без "/" в конце.

Но, в таком случае не подменяется часть URI запроса, соответствующая
location.  И тоже получается несовместимость ? придется править код на
бэкендах, появится лишняя связаность и зависимость...

--
Ruvim

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,227214,230787#msg-230787

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.