Can you try using a browser plugin like Fiddler for IE or LiveHttpHeaders for FF to see whether it's a 30x redirect that contains a Location header with http and/or page content?
The iRule you have listed would insert a Location header in every response. You would most likely want to do this only if there was a Location header already (ie, it's a redirect). You can add a check to see if HTTP::is_redirect is true to do this.
when HTTP_RESPONSE {
if {[HTTP::is_redirect]}{
HTTP::header replace Location "[string map {http:// https://} [HTTP::header Location]]"
}
}
If it does turn out to be page content which contains absolute references to http, you can use a stream profile and a rule like this to rewrite the references to https (
Click here).
Aaron