Forum Discussion
Rewrite the post operation with a body.
- Sep 22, 2023
Hi Kerry/JRalm;
The issue resolved when i changed pool members from DEX to NGINX (using the same irule) since rewrite host name locate in NGINX. Thanks a lot for your support.
i tried both of your irules using my browser but i get 404 return. it mean somehow it doesn't hit irule when applying it to F5 then F5 send the request to pool members and get 404 error. i also tried the below irule but still not working. i see "get" method in console. Please advise. Thanks
when HTTP_REQUEST {
if {[HTTP::method] eq "POST"}{
HTTP::header replace origin "http://123.abc.com"
HTTP::header replace referer "http://123.bcd.com"
} else { return }
}
- JRahmSep 19, 2023Admin
maybe try the serverside of the connection to update the host?
when HTTP_REQUEST_SEND { clientside { HTTP::header replace Host <your desired host for server-side> } }
- KerrySep 20, 2023Cirrus
if https. you need to set the SNI values in the SSL profiles or via Irule. for testing add a log line so you know if the rules it hit and what things are being set to. also web server logs will show what being passed to it. there is a few irules examples aroubd on how to log all html headers.
"host" is the header you need to changes. the two you listed are just for reference.
- Hien_TruongSep 20, 2023Cirrus
we don't need SNI since both domain names are in different VS. i tried all of irule samples but allways get 404 from server. From curl -vks https://abc-cd.ef.com output, i don't see the header changed. to cd.ef.com. i will add log line to debug it. Any more advise why the irule or rewrite profile not working to replace other domain? thanks
- KerrySep 21, 2023Cirrus
F5 has a bug where SNI "server side" is set using the data in the client TCP packet. thus you migh have to set "server name" in server side SSL profiles. If you are tring to send to two different servers with different host names. you might need two SNI server profiles with different "server name" and use a irules to select the correct on.
see https://support.f5.com/csp/article/K13452
see https://support.f5.com/csp/article/K41600007i some times use curl on the Ff5 itself to see what the server (pool member) will and will not accpet. something like "curl -vk --header "Host: change_fqdn" --resolve old_FQDN:443:pool_member https://old_FQDN/" when this work then you know what to set in the irule.
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com