On Mon 16.11.2009 22:52, Cyril Bonté wrote:
Le lundi 16 novembre 2009 13:41:14, Willy Tarreau a écrit :
On Mon, Nov 16, 2009 at 01:04:17PM +0100, Aleksandar Lazic wrote:
[snipp]
> For example:
>
> if in the url the delimiter changes from ';' to ',' then you should
> set the following
>
> appsession-option delimiterstart ,
>
> and the end point is not '=' it is ';' then you should set the
> following
>
> appsession-option delimiterstop ;
(...)
Yes, this was exactly why I first thought of adding options on several
lines. Having all the options on the same like can quickly make the
configuration difficult to read/debug.
Imagine a line like :
"appsession PHPSESSID len 32 timeout 1h request-learn cookie-capture \
start-delimiters ?& stop-delimiters &"
I found it not really user friendly... (well, my idea to split the line
in several options looks not much better)
;-)
(...)
Also, if we have other special cases later, it might be easier to implement
some methods specific to some servers than to have the user explicitly
specify a number of complex arguments they won't always be able to figure
out.
For instance : appsession-mode weblogic
(...)
I really like this idea. This would make the configuration simpler and
the algorithm to parse the URL can be easily optimized for each mode.
I agree.
Based on this idea, maybe we can stay with all the options on the same
line (looks like the "server" configuration part).
The most complex line would be :
"appsession PHPSESSID len 32 timeout 1h mode query-string request-learn
cookie-capture"
Looks ok for me.
And for now, I see 2 modes :
- path-parameters (the default)
- query-string (the one that made me look at the code :-) )
(and if needed "weblogic")
Looks ok for me.
What I'am not sure now is how we can prevent that notsuccessful searches
on long URLs have negative performance impact?
BR
Aleks