mod_version

优质
小牛编辑
138浏览
2023-12-01
说明提供基于版本的配置段支持
状态扩展(E)
模块名version_module
源文件mod_version.c
兼容性仅在 Apache 2.0.56 及以后的版本中可用

概述

This module is designed for the use in test suites and large networks which have to deal with different httpd versions and different configurations. It provides a new container -- <IfVersion>, which allows a flexible version checking including numeric comparisons and regular expressions.

例子

<IfVersion 2.1.0>
# current httpd version is exactly 2.1.0
</IfVersion>

<IfVersion >= 2.2>
# use really new features :-)
</IfVersion>

See below for further possibilities.

<IfVersion> 指令

说明contains version dependent configuration
语法<IfVersion [[!]operator] version> ... </IfVersion>
作用域server config, virtual host, directory, .htaccess
覆盖项All
状态扩展(E)
模块mod_version

<IfVersion> section encloses configuration directives which are executed only if the httpd version matches the desired criteria. For normal (numeric) comparisons the version argument has the format major[.minor[.patch]], e.g. 2.1.02.2. minorpatch are optional. If these numbers are omitted, they are assumed to be zero. The following numerical operators are possible:

operatordescription
===httpd version is equal
>httpd version is greater than
>=httpd version is greater or equal
<httpd version is less than
<=httpd version is less or equal

示例

<IfVersion >= 2.1>
# this happens only in versions greater or
# equal 2.1.0.
</IfVersion>

Besides the numerical comparison it is possible to match a regular expression against the httpd version. There are two ways to write it:

operatordescription
===version has the form /regex/
~version has the form regex

示例

<IfVersion = /^2.1.[01234]$/>
# e.g. workaround for buggy versions </IfVersion>

In order to reverse the meaning, all operators can be preceded by an exclamation mark (!):

<IfVersion !~ ^2.1.[01234]$>
# not for those versions
</IfVersion>

If the operator is omitted, it is assumed to be =.