Re: Переменные окружения сервера в url-decoded формате
Igor Sysoev
igor на sysoev.ru
Пт Июл 8 10:43:52 UTC 2011
On Jul 8, 2011, at 14:30 , locojohn wrote:
> Увы, cgi.fix_pathinfo=1 уже стоит в php.ini. И это не
> меняет дело. Дело в том, что, похоже,
> директива fastcgi_param автоматически
> url-енкодирует передаваемые строки в
> окружение. Например:
>
> set $test $uri;
> fastcgi_param TEST $test;
>
> если оригинальный $request_uri содержит
> пробелы, то они снова енкодируются и
> становятся уже не %20 а %24%24%20, в
> результате чего TEST не будет содержать
> правильный путь.
Как именно получается PATH_INFO ? Если rewrite/set,
то кодируется. Нужно так:
location ~ \.php(<?PATH_INFO>/.+)$ {
...
fastcgi_param PATH_INFO $path_info;
}
--
Igor Sysoev
http://sysoev.ru/en/
Подробная информация о списке рассылки nginx-ru