I'm not 100% sure I understand the question, but breaking down the original client request:
https://f5VSserver.null.com/?uri=http://Server1.null.com/xyz/go?app_url=http://Server2.null.com:8000/http_handler/file.htm
would create an HTTP Request message that looks something like this:
GET /?uri=http://Server1.null.com/xyz/go?app_url=http://Server2.null.com:8000/http_handler/file.htm HTTP/1.1
Host: f5VSserver.null.com
... other headers here ...
Unless you use a Local Traffic Policy or iRule to modify the Host header, it will remain unchanged as the HTTP Request message is proxied to the selected Pool Member. The only thing your rule is modifying is the Request Target (aka, the Request URI) which is the field immediately after the GET method in the start-line. The requested hostname is not part of the Request Target.