On Sun, Jul 25, 2010 at 12:18:53AM +0200, [email protected] wrote:
> Thanks again for the response,
>    
> 
>    I've come across some documentation for my app being used with a hardware 
> appliance and the only config done on the app side is to disable ssl, which 
> it currently is in my test set up.     I found this important piece of info 
> in the documentation also.
> 
> A third iRule is used to rewrite the response from the application so SSL 
> offloading 
> can work. This iRule performs two functions, first it removes the Pragma 
> header 
> from the response, this header can cause problems when used as part of an 
> encrypted connection.

Till there, OK.

> The second function is selectively implementing the 
> stream replace. It is important to only modify text/html content.

Ahhhhhh!! but this is terribly dirty and unreliable. When some URLs
are built from concatenation of two strings, this will not work, when
they are built from JS, this will not work either. When parameters
are to be passed to other URLs or components, this will not work.
In fact there are quite a bunch of cases where this is unreliable,
so you really have to configure the application to emit correct URLs.
This also prevents you from sending compressed data.

If there is no http<->https switching required from the application,
the best thing to do is to use only relative URLs. If the application
has to know its address, then configure it to announce the public URL
and not the private one nor the one deduced by the server. Also, check
your server's doc, it is possible that it knows how to automatically
switch to HTTPS URLs if it sees a specific header in the request. Some
servers do that. If that's the case, simply add the header from haproxy
using a "reqadd" rule.

Regards,
Willy


Reply via email to