blob: c7c503f76b107bd27f62e95254b8220f8e5ed214 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
|
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision : 1421821 -->
<!-- French translation : Lucien GENTIS -->
<!-- $LastChangedRevision: 2012121601 $ -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<modulesynopsis metafile="mod_version.xml.meta">
<name>mod_version</name>
<description>Configuration dépendant de la version</description>
<status>Extension</status>
<sourcefile>mod_version.c</sourcefile>
<identifier>version_module</identifier>
<summary>
<p>Ce module a été conçu pour être utilisé dans les suites de tests
et les grands réseaux qui doivent prendre en compte différentes
versions de httpd et différentes configurations. Il fournit un
nouveau conteneur -- <directive type="section"
module="mod_version">IfVersion</directive>, qui apporte une grande
souplesse dans la vérification de version en permettant une
comparaison numérique et l'utilisation d'expressions
rationnelles.</p>
<example><title>Exemples</title>
<highlight language="config">
<IfVersion 2.4.2>
# la version actuelle de httpd est exactement 2.4.2
</IfVersion>
<IfVersion >= 2.5>
# utilise vraiment les nouvelles fonctionnalités :-)
</IfVersion>
</highlight>
</example>
<p>Voir ci-dessous pour d'autres exemples.</p>
</summary>
<directivesynopsis type="section">
<name>IfVersion</name>
<description>Contient des portions de configuration dépendantes de la
version</description>
<syntax><IfVersion [[!]<var>opérateur</var>] <var>version</var>> ...
</IfVersion></syntax>
<contextlist><context>server config</context><context>virtual host
</context>
<context>directory</context><context>.htaccess</context></contextlist>
<override>All</override>
<usage>
<p>La section <directive type="section">IfVersion</directive>
rassemble des directives de configuration qui ne sont exécutées que
si la version de httpd satisfait aux critères spécifiés. Pour une
comparaison normale (numérique), l'argument <var>version</var> doit
être spécifié sous le format
<code><var>majeur</var>[.<var>mineur</var>[.<var>patch</var>]]</code>,
comme par exemple <code>2.1.0</code> ou <code>2.2</code>.
<var>mineur</var> et <var>patch</var> sont optionnels. Si ces
numéros sont absents, il se voient affectée implicitement la valeur
0. Les <var>opérateur</var>s numériques suivants sont autorisés
:</p>
<table style="zebra" border="1">
<tr><th><var>opérateur</var></th><th>description</th></tr>
<tr><td><code>=</code> ou <code>==</code></td>
<td>La version de httpd est égale à la valeur
spécifiée</td></tr>
<tr><td><code>></code></td>
<td>La version de httpd est supérieure à la valeur
spécifiée</td></tr>
<tr><td><code>>=</code></td>
<td>La version de httpd est supérieure ou égale à la valeur
spécifiée</td></tr>
<tr><td><code><</code></td>
<td>La version de httpd est inférieure à la valeur
spécifiée</td></tr>
<tr><td><code><=</code></td>
<td>La version de httpd est inférieure ou égale à la valeur
spécifiée</td></tr>
</table>
<example><title>Exemple</title>
<highlight language="config">
<IfVersion >= 2.3>
# la condition n'est satisfaite que pour les versions de httpd
# supérieures ou égales à 2.3
</IfVersion>
</highlight>
</example>
<p>En plus d'une comparaison numérique, il est possible de comparer
la version de httpd avec une <glossary ref="regex">expression
rationnelle</glossary>. Il existe deux méthodes pour spécifier cette
dernière :</p>
<table style="zebra" border="1">
<tr><th><var>opérateur</var></th><th>description</th></tr>
<tr><td><code>=</code> ou <code>==</code></td>
<td><var>version</var> est de la forme
<code>/<var>regex</var>/</code></td></tr>
<tr><td><code>~</code></td>
<td><var>version</var> est de la forme
<code><var>regex</var></code></td></tr>
</table>
<example><title>Exemple</title>
<highlight language="config">
<IfVersion = /^2.4.[01234]$/>
# exemple de contournement pour les versions boguées
</IfVersion>
</highlight>
</example>
<p>Pour inverser la condition, tous les opérateurs peuvent être
préfixés par un point d'exclamation (<code>!</code>) :</p>
<example>
<highlight language="config">
<IfVersion !~ ^2.4.[01234]$>
# pas pour ces versions
</IfVersion>
</highlight>
</example>
<p>Si <var>opérateur</var> est absent, sa valeur implicite est
<code>=</code>.</p>
</usage>
</directivesynopsis>
</modulesynopsis>
|