On Fri, Aug 6, 2010 at 12:46 AM, Alvaro Lopez Ortega <[email protected]>wrote:

> On 06/08/2010, at 05:21, C. Mundi wrote:
>
> > So... The nonfinal forbid trumps the default allow in the case of
> > a.php...is that because of the order?  Or because default is weaker
> > than patterns?
>
> The rule list is evaluated from top to bottom. If a rule matches the
> request there are two possible outcomes, depending on whether or not it's a
> final rule:
>
> - Final Rule: The content of the rule is applied, and the evaluation
> finishes.
> - Non-Final Rule: The content of the rule is applies, and the evaluation
> continues until a final rule is matched or the final (default) rule is
> reached.
>
> The 'Leave unset' option of the encoders means that, whenever a rule is
> applied, it will not change the status of the encoding status.
>
> Another example using the previous rule list: /abc.php.  It matches the
> first rule, so GZip is forbidden; since it is no-final the evaluation
> continues. It also matches the second rule, but since Gzip support got
> already forbidden nothing is changed. When it hits the last rule, the same
> thing happens: GZip is already forbidden, so the value is not overwritten.
>
>
>
Aha!  That's what was missing.  So once an attribute "A" is set (to any
value other than "leave unchanged") by a non-final rule, subsequent rules
are not allowed to change the value of "A" for that request.  Got it.  In
other words, for a given request, any attribute A is written exactly zero or
one times, regardless of how many rules mention A.  Makes perfect sense.
Thanks.
_______________________________________________
Cherokee mailing list
[email protected]
http://lists.octality.com/listinfo/cherokee

Reply via email to