যখন আমি এই URL টি ব্রাউজ করি: http://localhost:8080/foo/%5B-%5D
সার্ভার ( nc -l 8080
) এটি হিসাবে রয়েছে:
GET /foo/%5B-%5D HTTP/1.1
তবে আমি যখন এই অ্যাপ্লিকেশনটিকে এনজিঙ্ক্সের মাধ্যমে প্রক্সি করি (1.1.19):
location /foo {
proxy_pass http://localhost:8080/foo;
}
একই অনুরোধটি এনজিনেক্স বন্দরের মাধ্যমে পাঠানো হয়েছে ডিকোড করা পথের সাথে প্রেরণ করা হয়েছে:
GET /foo/[-] HTTP/1.1
জিইটি পাথের ডিকোডেড স্কোয়ার ব্র্যাকেটগুলি অচল অবস্থায় পৌঁছানোর সাথে সাথে টার্গেট সার্ভারে ত্রুটি ঘটায় ( HTTP অবস্থা 400 - পথে অবৈধ চরিত্র ... )।
ইউআরএল ডিকোডিং অক্ষম করার বা এটিকে আবার এনকোড করার কোনও উপায় আছে যাতে এনজিনেক্সের মাধ্যমে রুট করার সময় লক্ষ্য সার্ভারটি ঠিক একই পাথটি পায়? কিছু চালাক ইউআরএল পুনর্লিখনের নিয়ম?