Nginx делает только подкаталог urlencode - PullRequest
0 голосов
/ 07 июня 2019

Мне нужно написать директиву nginx для запросов прокси на другой сервер, сохраняющий кодировку urlencoding.

пример - запрос иногда такой:

http://1111:5000/blue/job/test/ab/build111

должно пройти как

http://abcd.com/blue/job/test%2fab%2fbuild111

и иногда так:

http://1111:5000/blue/job/test-ac/build222

должно пройти как

http://abcd.com/blue/job/test-ac%2fbuild222

видно, иногда подкаталогу было test/ab/ нужен urlencode, передайте test%2fab%2f, иногда test-ac может понадобиться urlencode, передайте test-ac%2f, и последний путь также может измениться.

Попробовал

if ($request_uri ~* "/blue(/.*)") {
    proxy_pass http://1111:5000/blue$1;
    break;
}

это не работает, тогда как nginx может urlencode только подкаталог?

...