Hi Willy, Thanks for your suggestion, it is working as expected. I’ll keep it this way now.
Best Laurent On 09/12/15 11:24, "Willy Tarreau" <[email protected]> wrote: >Hi Aleks, > >On Tue, Dec 08, 2015 at 11:35:20PM +0100, Aleksandar Lazic wrote: >> Hi. >> >> Am 08-12-2015 11:23, schrieb Thierry FOURNIER: >> >Hi, >> > >> >I agree with you, but in HAProxy, the ';' is considered as parameter >> >delimiter. Its hardcoded, and I don't known the reason. >> >> There are several reasons for the ';' to be a separator similar like >> '&'. >> >> http://www.skorks.com/2010/05/what-every-developer-should-know-about-urls/ >> http://www.w3.org/TR/html401/appendix/notes.html#h-B.2.2 >> >> As far as I remember almost every Appserver add a ';....session=....' to >> the URL when the server detects that the client does not accept cookies. >> >> http://javarevisited.blogspot.co.at/2012/08/what-is-jsessionid-in-j2ee-web.html >> http://www.php.net/manual/en/session.configuration.php#ini.session.use-trans-sid >> http://www.programmerinterview.com/index.php/php-questions/can-sessions-work-without-cookies/ > >Thanks for the links. Indeed it's again caused by not every application >agreeing on the delimiter to use there. I remember we had this discussion >10 years ago when you needed to support ';' as a delimitor for the >appsession cookie because you were already seeing a lot of applications >using it. > >The root of the problem stems to the fact that no spec has ever recommended >to send the semi-colon %-encoded when it designates a character part of a >string. Here if the URL was constructed as "word1%3B+word2" there wouldn't >be any issue. > >We could imagine having an optional third parameter to urlp to indicate >what only delimiter we support. But that would become a real mess for >users to properly configure :-( > >Laurent, I think until we find a better solution, one possibility would >be to first re-encode the ';' in the query string : > > http-request set-query %[query,regsub(;,%3B,g)] > >Then you'll be safe. > >Regards, >Willy >

