我已经升级到 Apache 2.4,我需要更改所有
Order allow,deny
Allow from all
到
Require all granted
然而,这导致这些虚拟主机文件在 Apache 2.2 上停止工作。
有没有办法IF
在配置中写入一些内容以使相同的虚拟主机文件适用于两个版本?
答案1
您可以使用mod_version
(关联)
<IfVersion >= 2.4>
Require all granted
</IfVersion>
<IfVersion < 2.4>
Order allow,deny
Allow from all
</IfVersion>
答案2
在等待答案的时候我似乎找到了解决方案:
<IfModule mod_authz_core.c>
# Apache 2.4
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order deny,allow
Allow from all
</IfModule>
显然,您可以检查特定模块是否存在,并让 Apache2 执行相应的操作。