If "AllowEncodedSlashes On" is set in the global context, it is not inherited by virtual hosts. You must explicitly set "AllowEncodedSlashes On" in every <VirtalHost> container. I think this should be documented as it took me a while to find that out!
It seems to me that the behavior of AllowEncodedSlashes is wrong. The documentation for how the different configuration sections are merged (http://httpd.apache.org/docs/2.2/sections.html) says "Sections inside <VirtualHost> sections are applied after the corresponding sections outside the virtual host definition. This allows virtual hosts to override the main server configuration." This sounds to me as if the configuration in the main server ought to apply to the virtual host as well, unless overridden in the virtual host. Comments?
I agree with you, Dan, that AllowEncodedSlashes does not work the way it should according to the section merge order. But my primary intention is to document the way AllowEncodedSlashes actually works. The bug in the merge order can than be fixed later, i don't think this has a high priority.
Moving docs bugs to docs@httpd.a.o ownership.
Changed in trunk and next 2.2 release, hopefully in a way that will satisfy most users. AllowEncodedSlashes On still decodes slashes, but new option AllowEncodedSlashes NoDecode will allow the slashes and not decode them. Doc has been updated, so closing doc bug as well. trunk r1082196 2.2.x r1082630