rewrite iRule issues Request & Response
I am having major issues with a rewrite iRule I am trying to get to work. I am running 11.5.3
I have an application that works internally with a horrible name and uri (not FQDN), and the application is dependent on that name and URI. The application does a redirect that they can not remove.
What I am trying to accomplish is the following. 1. rewrite http with https 2. allow the user to enter "newname.domain.com" but the server will see that as "horriblename:8088" 3. allow user to enter path of /newapp and the server will see "/site/app/default.aspx" 4. since the server response does a redirect it needs to happen both ways.
when HTTP_REQUEST { HTTP::host "horriblename:8088" }
that seems to partially work. When I go to newname.domain.com/site/app/default.aspx it gets me to the site but then the web server does the redirect and my URL changes to horriblename:8088/site/app/default.aspx
Below was my first stab at it but it didn't work
when HTTP_REQUEST { if { [HTTP::uri] equals "/newapp" } { In case the server complains, set the host header. HTTP::header replace Host "horriblename:8088" Finally change the URI while on its way to server. HTTP::uri /site/app/default.aspx } Disable the stream filter for all requests STREAM::disable } when HTTP_RESPONSE { Check if response type is text if {[HTTP::header value Content-Type] contains "text"}{ Replace http with https, horriblename:8088 with newname.domain.com, /site/app/default.aspx with newapp STREAM::expression [list {@http:\@https:\@} {@horriblename:8088@newname.domain.com@} {@/site/app/default.aspx@newapp@} ] Enable the stream filter for this response only STREAM::enable } }