Re: Переменные окружения сервера в url-decoded формате

Denis F. Latypoff latypoff на yandex.ru
Пт Июл 8 11:30:44 UTC 2011


08.07.2011, 17:44, "Igor Sysoev" <igor at sysoev.ru>:
> 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>/.+)$ {
+ location ~ \.php(?<PATH_INFO>/.+)$ {
>       ...
-       fastcgi_param  PATH_INFO  $path_info;
+       fastcgi_param  PATH_INFO  $PATH_INFO;
> }
>
> --
> Igor Sysoev
> http://sysoev.ru/en/
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru

-- 
br, Denis F. Latypoff.



Подробная информация о списке рассылки nginx-ru