0
我在Nginx上遇到了麻煩。 Nginx代理像這樣接收urlencoded URI。如何使用Nginx代理禁用urlencoding
GET /X/Y/Z.aspx?id=abc%3D%3D
而且,我注意到,Nginx的適用再次URL編碼,使URI這樣。
GET /X/Y/Z.aspx?id=abc%253D%253D
我該如何禁用Nginx來應用這樣的urlencoding?我想按原樣傳輸URI。
有沒有辦法修改請求的uri?
據Nginx的文檔,它說..
$request_uri
full original request URI (with arguments)
所以,我指定的proxy_pass像下面。
proxy_pass http://x.x.x.x$request_uri;
Nginx仍然發送請求如下。
GET /X/Y/Z.aspx?id=abc%253D%253D
Nginx似乎在發送消息時應用了url編碼。那麼,我可以讓Nginx在收到請求時解碼請求嗎?然後,Nginx會在發送時自動對其進行編碼,這意味着它以如下所示的預期參數結束。
GET /X/Y/Z.aspx?id=abc%3D%3D
實際上,這對Nginx來說不是問題。我在Nginx之前實際上已經有了另一個代理,並且正在引發這個問題。 Nginx只是傳遞從這個代理傳遞的消息。所以,至少應該關閉這種情況。以這樣的結果爲我的帖子道歉。 –