﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	uname	nginx_version
963	Double escaping of URI variable in IF statement	chuguyster@…		"Upstream configuration:
{{{
server {
    listen       80;
    server_name  en.tests.local;

    location / {
        default_type  text/plain;

        return 200 'Url: $request_uri';
    }
}
}}}

Proxy configuration:

{{{
server {
    listen       80;
    server_name  ru.tests.local ;

    set $rps_uri $request_uri;

    location / {

        proxy_pass         $scheme://127.0.0.1$rps_uri;
        proxy_set_header Host en.tests.local;

        if ($request_uri ~ ^/ru-ru/(.*)$) {set $rps_uri ""/en-us/$1"";}
    }
}
}}}

Curl:
{{{
curl http://localhost/ru-ru/%D1%82%D0%B5%D1%81%D1%82 -H ""Host: ru.tests.local""
}}}

Expected value of $request_uri on upstream server:
{{{
/en-us/%D1%82%D0%B5%D1%81%D1%82
}}}

Actual result:
{{{
/en-us/%25D1%2582%25D0%25B5%25D1%2581%25D1%2582
}}}"	defect	closed	major		nginx-core	1.8.x	duplicate			Linux 3.14.48-33.39.amzn1.x86_64 #1 SMP Tue Jul 14 23:43:07 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux	"nginx version: nginx/1.8.1
built by gcc 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) 
built with OpenSSL 1.0.1k-fips 8 Jan 2015
TLS SNI support enabled"
