Advanced Rewrite request url to match the query string and normalization

shadowgun1102 nginx-forum at forum.nginx.org
Wed Feb 27 04:07:34 UTC 2019


I have a simple nginx forward proxy, configured as:

server {
listen 8000;
resolver 8.8.8.8;
location / {
proxy_pass http://$host;
proxy_set_header Host $host;
}
}

The client behind its isp firewall sends the request (per nginx log): GET
http://www.clientisp.com/path/rewrite.do?url=http%3A%2F%2Fwww.example.com
HTTP/1.1

How do I transform the requested url to http://www.example.com before it is
sent to the upstream?

I looked up many posts online, but I am still confused at:

1. The online examples usually teach how you match the uri part, but my
goal is to obtain the queried string only, i.e., everything after the
equation mark"=", http%3A%2F%2Fwww.example.com.
2. I have no idea how to decode the percentage coded symbols into
normalized one.

Thanks for your input!

Posted at Nginx Forum: https://forum.nginx.org/read.php?2,283192,283192#msg-283192



More information about the nginx mailing list