Bu URL'ye göz attığımda: http://localhost:8080/foo/%5B-%5D
server ( nc -l 8080
) olduğu gibi alıyor:
GET /foo/%5B-%5D HTTP/1.1
Ancak, bu uygulamayı nginx (1.1.19) aracılığıyla proxy'leydiğimde:
location /foo {
proxy_pass http://localhost:8080/foo;
}
Nginx portu üzerinden yönlendirilen aynı istek kodu çözülmüş yolla iletilir:
GET /foo/[-] HTTP/1.1
GET yolundaki kodu çözülmüş köşeli parantezler, hedef sunucudaki hatalara neden olur ( HTTP Durum 400 - Yoldaki geçersiz karakter ... ).
URL kod çözmeyi devre dışı bırakmak veya geri kodlamak için hedef sunucunun nginx üzerinden yönlendirildiğinde aynı yolu alabilmesi için bir yolu var mı? Bazı zeki URL yeniden yazma kuralı?