DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUGĀ· RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=34844>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED ANDĀ· INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=34844 ------- Additional Comments From [EMAIL PROTECTED] 2005-10-15 19:11 ------- Created an attachment (id=16701) --> (http://issues.apache.org/bugzilla/attachment.cgi?id=16701&action=view) Propose URL decoding of stickysession route I suspect current httpd-2.2.x branch mod_proxy_balancer stickysession doesn't work _at all_ when using cookie-based stickysessions, at least not when the cookie value is URL encoded (as it was in my case). Found this by load balancing between two servers with different content, and I was sent back and forth between them; definitely not sticky. I got Found value <sessionid> for stickysession <stickysession>, but _not_ any Found route <route> when looking at the debug log. The <sessionid> was logged as "%2EW1" and not ".W1", though. It seems as if mod_proxy_balancer.c checks against '.', but doesn't URL decode the string first (if it had, it shouldn't have logged it encoded): ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, r->server, "proxy: BALANCER: Found value %s for " "stickysession %s", *route, balancer->sticky); /* * If we found a value for sticksession, find the first '.' within. * Everything after '.' (if present) is our route. */ if ((*route) && ((*route = strchr(*route, '.')) != NULL )) (*route)++; if ((*route) && (**route)) { ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, r->server, "proxy: BALANCER: Found route %s", *route); (Note that the backend server is running IIS. I'm assuming it's doing the right thing of encoding the cookie values; I'm not doing that explicitly.) The attached patch seems to fix this in my case, and something like this should probably be included in mod_proxy_balancer.c. Note: I'm not sure if this is the proper Apache way of doing things. I borrowed decodeenc() from mod_proxy_ftp.c, so it should probably be refactored into a common function, if it's not already in APR (which I guess it may be). Also, I had to change from (void)decodeenc(route) to (void)decodeenc(*route) - not sure if that's a problem in mod_proxy_ftp.c, didn't check that closely. -- Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
