Hello Rafi, if I'm not mistaken you're having the same issue as this post here.
- globalserver.mydomain.com should resolve to your VS IP
- if SSL is in place, you need a clientSSL profile with a certificate that matches "globalserver" SNI (or wildcard for *.mydomain.com)
- you need HTTP profile on the vitual server to parse request elements
- if backend server speaks SSL, you also need a serverSSL profile
iRule should be pretty simple, this code will rewrite client request before sending it to server -- meaning it will be transparent to client.
when HTTP_REQUEST {
if {[string tolower [HTTP::host]] eq "globalserver.mydomain.com" }{
HTTP::header replace Host "internalserver.com"
HTTP::uri "/portsluser/main#page/"
}
}
My only concern would be that you have hash "#" character in URI, which is a reserved character that is usually only interpreted by client browser (usually not passed to server) to identify a fragment.