Am 21.02.2017 um 22:58 schrieb Joe Orton:
For cases like HttpProtocolOptions where a new directive is introduced
to multiple active branches simultaneously, it gets awkward to use
<IfVersion> to write conf files which use the new directive but are
compatible across multiple versions.
Triggered by a conversation with a user, but also e.g. see current test
suite t/conf/extra.conf.in which breaks for 2.4 releases older than
2.4.25 with:
<IfVersion >= 2.2.32>
<VirtualHost _default_:http_strict>
DocumentRoot @SERVERROOT@/htdocs/
HttpProtocolOptions Strict Require1.0 RegisteredMethods
Any reason <IfDirective> is a bad idea, so we can do that more cleanly
(... in a couple of decades time)?
you need to wrap that at least in <IfModule> since mod_version is not
mandatory and httpd if unforgiving for unknown options
for the same reason the dance below is needed
<IfModule !mod_version.c>
<IfModule mod_authz_core.c>
Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
Order deny,allow
Deny from All
</IfModule>
</IfModule>
<IfModule mod_version.c>
<IfVersion < 2.4>
Order deny,allow
Deny from all
</IfVersion>
<IfVersion >= 2.4>
Require all denied
</IfVersion>
</IfModule>