ПРОЕКТЫ 


  АРХИВ 


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[2]: исчезает символ при проксировании



On Mon, 13 Jun 2005, Yevgeniy Kruglov wrote:

Hello Igor,

Friday, November 26, 2004, 4:47:36 AM, you wrote:

Да, nginx нормализует URI (но не аргументы) следущим образом:
*) несколько / превращается в один /
*) /./ превращается в /
*) /../ убирает предыдущий каталог, если убирать нечего, возвращается 400
*) под win32 /.../ убирает два каталога
*) под win32 \ превращается в /
*) %XX преобразуется в символ. Преобразование однократное, то есть, "%2530"
   преобразуется в "%30", а не в "0"
IS> Я решил сделать всё-таки всегда склеивать несколько "/" в один без всяких
IS> директив, кроме одной комбинации: "://". Есть какие-нибудь ещё комбинации ?

А эта комбинация сейчас работает? Необходимость в этом появилась только сейчас,
на сервере nginx 0.1.35, на других версиях не проверялось.

URL типа http://site.com/cgi/script/http://anothersite.com?r=aa&r2=bb ,
соответсвенно после того, как сайт упрятали за nginx на frontend, второй двойной
слэш из URI пропал.

Нет, эта комбинация сейчас не работает:

Изменения в nginx 0.1.27                                          28.03.2005

    [ ... ]

    *) Добавление: директива proxy_pass_unparsed_uri. Специальная обработка
       символов "://" в URI, введённая в версии 0.1.11, теперь упразднена.

Нужно использовать "proxy_pass_unparsed_uri  on", в этом случае
никакго изменения URI, передаваемого бэкенду, не будет:
http://sysoev.ru/nginx/docs/http/ngx_http_proxy_module.html#proxy_pass


Игорь Сысоев
http://sysoev.ru




 




Copyright © Lexa Software, 1996-2009.