proxy pass - пропадают аргументы
green
nginx-forum на nginx.us
Ср Фев 23 02:31:03 MSK 2011
Когда делаю что-то подобное:
location ~ ^/test(/.*\.php)$ {
proxy_pass http://cgi$1;
}
То в запросе не передаются аргументы,
т.е. запрос:
http://server/test/xxx.php?param
преобразуется в:
http://cgi/xxx.php
(без аргументов)
Если же делать:
location ~ \.php$ {
rewrite ^/test(/.*\.php)$ $1 break; # без него тоже
передаётся, но необрезанное
proxy_pass http://cgi;
}
То всё передаётся. В документации
ничего вроде не нашёл про это, зато там
написано, что если указывать proxy_pass без
uri, то ему передастся запрос as-is, без
сокращения слешей и т.п.
Это баг или фича? И что меньшее зло - rewrite
или добавлять $is_args$args в proxy_pass?
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,177602,177602#msg-177602
Подробная информация о списке рассылки nginx-ru