Newer
Older
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>N'applique les directives contenues qu'aux URLs
spcifies</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code><Location
<var>chemin URL</var>|<var>URL</var>> ... </Location></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
</table>
<p>La directive <code class="directive"><Location></code>
limite la porte des directives contenues aux URLs dfinies par
l'argument URL. Elle est similaire la directive <code class="directive"><a href="#directory"><Directory></a></code>, et marque le
dbut d'une section qui se termine par une directive
<code></Location></code>. Les sections <code class="directive"><Location></code> sont traites selon l'ordre dans
lequel elles apparaissent dans le fichier de configuration, mais
aprs les sections <code class="directive"><a href="#directory"><Directory></a></code> et la lecture des
fichiers <code>.htaccess</code>, et aprs les sections <code class="directive"><a href="#files"><Files></a></code>.</p>
<p>Les sections <code class="directive"><Location></code>
agissent compltement en dehors du systme de fichiers. Ceci a de
nombreuses consquences. Parmi les plus importantes, on ne doit pas
utiliser les sections <code class="directive"><Location></code>
pour contrler l'accs aux rpertoires du systme de fichiers. Comme
plusieurs URLs peuvent correspondre au mme rpertoire du systme de
fichiers, un tel contrle d'accs pourrait tre contourn.</p>
<p>Les directives que contient cette section seront appliques aux
requtes si la partie chemin de l'URL satisfait l'un au moins de
ces critres :
</p>
<ul>
<li>Le chemin spcifi correspond exactement la partie chemin de
l'URL.
</li>
<li>Le chemin spcifi, qui se termine par un slash, est un
prfixe de la partie chemin de l'URL (trait comme une racine du
contexte).
</li>
<li>Le chemin spcifi, si on lui ajoute un slash de fin, est un
prfixe de la partie chemin de l'URL (aussi trait comme une racine du
contexte).
</li>
</ul>
<p>
Dans l'exemple ci-dessous, o aucun slash de fin n'est utilis, les
directives contenues dans la section s'appliqueront /private1,
/private1/ et /private1/file.txt, mais pas /private1other.
</p>
<pre class="prettyprint lang-config"><Location "/private1">
# ...
</Location></pre>
<p>
De mme, dans l'exemple ci-dessous, o l'on utilise un slash de fin, les
directives contenues dans la section s'appliqueront /private2/ et
/private2/file.txt, mais pas /private2other.
</p>
<pre class="prettyprint lang-config"><Location "/private2<em>/</em>">
# ...
</Location></pre>
<div class="note"><h3>Quand utiliser la section <code class="directive"><Location></code></h3>
<p>Vous pouvez utiliser une section <code class="directive"><Location></code> pour appliquer des directives
des contenus situs en dehors du systme de fichiers. Pour les
contenus situs l'intrieur du systme de fichiers, utilisez
plutt les sections <code class="directive"><a href="#directory"><Directory></a></code> et <code class="directive"><a href="#files"><Files></a></code>. <code><Location
"/"></code> constitue une exception et permet d'appliquer aisment
une configuration l'ensemble du serveur.</p>
</div>
<p>Pour toutes les requtes originales (non mandates), l'argument
URL est un chemin d'URL de la forme
<code>/chemin/</code>. <em>Aucun protocole, nom d'hte, port, ou chane
de requte ne doivent apparatre.</em> Pour les requtes mandates, l'URL
spcifie doit tre de la forme
<code>protocole://nom_serveur/chemin</code>, et vous devez inclure
le prfixe.</p>
<p>L'URL peut contenir des caractres gnriques. Dans une chane
avec caractres gnriques, <code>?</code> correspond un caractre
quelconque, et <code>*</code> toute chane de caractres. Les
caractres gnriques ne peuvent pas remplacer un / dans le chemin
URL.</p>
<p>On peut aussi utiliser les <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">Expressions
rationnelles</a>, moyennant l'addition d'un caractre
<code>~</code>. Par exemple :</p>
<pre class="prettyprint lang-config"><Location ~ "/(extra|special)/data">
#...
</Location></pre>
<p>concernerait les URLs contenant les sous-chane
<code>/extra/data</code> ou <code>/special/data</code>. La directive
<code class="directive"><a href="#locationmatch"><LocationMatch></a></code>
prsente un comportement identique la version avec expressions
rationnelles de la directive <code class="directive"><Location></code>, et son utilisation est
prfrable l'utilisation de cette dernire pour la simple raison
qu'il est difficile de distinguer <code>~</code> de <code>-</code>
dans la plupart des fontes.</p>
<p>La directive <code class="directive"><Location></code>
s'utilise principalement avec la directive <code class="directive"><a href="#sethandler">SetHandler</a></code>. Par exemple, pour activer les
requtes d'tat, mais ne les autoriser que depuis des navigateurs
appartenant au domaine <code>example.com</code>, vous pouvez
utiliser :</p>
<pre class="prettyprint lang-config"><Location "/status">
SetHandler server-status
Require host example.com
</Location></pre>
<div class="note"><h3>Note propos du slash (/)</h3>
<p>La signification du caractre slash dpend de l'endroit o il
se trouve dans l'URL. Les utilisateurs peuvent tre habitus
son comportement dans le systme de fichiers o plusieurs slashes
successifs sont souvent rduits un slash unique (en d'autres
termes, <code>/home///foo</code> est identique
<code>/home/foo</code>). Dans l'espace de nommage des URLs, ce
n'est cependant pas toujours le cas. Pour la directive <code class="directive"><a href="#locationmatch"><LocationMatch></a></code> et la
version avec expressions rationnelles de la directive <code class="directive"><Location></code>, vous devez spcifier
explicitement les slashes multiples si telle est votre
intention.</p>
<p>Par exemple, <code><LocationMatch "^/abc"></code> va
correspondre l'URL <code>/abc</code> mais pas l'URL <code>
//abc</code>. La directive <code class="directive"><Location></code> sans expression rationnelle se comporte de
la mme manire lorsqu'elle est utilise pour des requtes
mandates. Par contre, lorsque la directive <code class="directive"><Location></code> sans expression rationnelle
est utilise pour des requtes non mandates, elle fera
correspondre implicitement les slashes multiples des slashes
uniques. Par exemple, si vous spcifiez <code><Location
"/abc/def"></code>, une requte de la forme
<code>/abc//def</code> correspondra.</p>
</div>
<h3>Voir aussi</h3>
<ul>
<li><a href="../sections.html">Comment fonctionnent les sections
<Directory>, <Location> et <Files></a> pour une
explication de la manire dont ces diffrentes sections se combinent
entre elles la rception d'une requte.</li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="locationmatch" id="locationmatch">Directive</a> <a name="LocationMatch" id="LocationMatch"><LocationMatch></a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>N'applique les directives contenues qu'aux URLs
correspondant une expression rationnelle</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code><LocationMatch
<var>regex</var>> ... </LocationMatch></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
</table>
<p>La directive <code class="directive"><LocationMatch></code>
limite la porte des directives contenues l'URL spcifie, de
manire identique la directive <code class="directive"><a href="#location"><Location></a></code>. Mais son argument permettant de
spcifier les URLs concernes est une <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression rationnelle</a> au lieu d'une simple
chane de caractres. Par exemple :</p>
<pre class="prettyprint lang-config"><LocationMatch "/(extra|special)/data">
# ...
</LocationMatch></pre>
<p>correspondrait toute URL contenant les sous-chanes
<code>/extra/data</code> ou <code>/special/data</code>.</p>
<div class="note"><p>Si vous recherchez une URL <strong>commenant par</strong>
plutt que seulement contenant <code>/extra/data</code>, prfixez
l'expression rationnelle avec un <code>^</code>.</p>
<pre class="prettyprint lang-config"><LocationMatch "^/(extra|special)/data"></pre>
</div>
<p>A partir de la version 2.4.8, les groupes nomms et les
rfrences arrires sont extraits et enregistrs dans
l'environnement avec leur nom en majuscules et prfix
par "MATCH_". Ceci permet
de rfrencer des URLs dans des <a href="../expr.html">expressions</a>
ou au sein de modules comme <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>. Pour
viter toute confusion, les rfrences arrires numrotes (non
nommes) sont ignores. Vous devez utiliser la place des groupes
nomms.</p>
<pre class="prettyprint lang-config"><LocationMatch "^/combined/(?<sitename>[^/]+)">
require ldap-group cn=%{env:MATCH_SITENAME},ou=combined,o=Example
</LocationMatch></pre>
<h3>Voir aussi</h3>
<ul>
<li><a href="../sections.html">Comment fonctionnent les sections
<Directory>, <Location> et <Files></a> pour une
explication de la manire dont ces diffrentes sections se combinent
entre elles la rception d'une requte.</li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="loglevel" id="loglevel">Directive</a> <a name="LogLevel" id="LogLevel">LogLevel</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Contrle la verbosit du journal des erreurs</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LogLevel [<var>module</var>:]<var>niveau</var>
[<var>module</var>:<var>niveau</var>] ...
</code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>LogLevel warn</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, rpertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>La configuration du niveau de journalisation par module
et par rpertoire est disponible depuis la version 2.3.6 du serveur HTTP
Apache</td></tr>
</table>
<p>La directive <code class="directive">LogLevel</code> permet d'ajuster la
verbosit des messages enregistrs dans les journaux d'erreur (voir
la directive <code class="directive"><a href="#errorlog">ErrorLog</a></code>
directive). Les <var>niveau</var>x disponibles sont prsents
ci-aprs, par ordre de criticit dcroissante :</p>
<table class="bordered">
<tr>
<th><strong>Niveau</strong> </th>
<th><strong>Description</strong> </th>
<th><strong>Exemple</strong> </th>
</tr>
<tr>
<td><code>emerg</code> </td>
<td>Urgences - le systme est inutilisable.</td>
<td>"Child cannot open lock file. Exiting"</td>
</tr>
<tr>
<td><code>alert</code> </td>
<td>Des mesures doivent tre prises immdiatement.</td>
<td>"getpwuid: couldn't determine user name from uid"</td>
</tr>
<tr>
<td><code>crit</code> </td>
<td>Conditions critiques.</td>
<td>"socket: Failed to get a socket, exiting child"</td>
</tr>
<tr>
<td><code>error</code> </td>
<td>Erreurs.</td>
<td>"Premature end of script headers"</td>
</tr>
<tr>
<td><code>warn</code> </td>
<td>Avertissements.</td>
<td>"child process 1234 did not exit, sending another
SIGHUP"</td>
</tr>
<tr>
<td><code>notice</code> </td>
<td>Evnement important mais normal.</td>
<td>"httpd: caught SIGBUS, attempting to dump core in
..."</td>
</tr>
<tr>
<td><code>info</code> </td>
<td>Informations.</td>
<td>"Server seems busy, (you may need to increase
StartServers, or Min/MaxSpareServers)..."</td>
</tr>
<tr>
<td><code>debug</code> </td>
<td>Messages de dbogage.</td>
<td>"Opening config file ..."</td>
</tr>
<tr>
<td><code>trace1</code> </td>
<td>Messages de traces</td>
<td>"proxy: FTP: control connection complete"</td>
</tr>
<tr>
<td><code>trace2</code> </td>
<td>Messages de traces</td>
<td>"proxy: CONNECT: sending the CONNECT request to the remote proxy"</td>
</tr>
<tr>
<td><code>trace3</code> </td>
<td>Messages de traces</td>
<td>"openssl: Handshake: start"</td>
</tr>
<tr>
<td><code>trace4</code> </td>
<td>Messages de traces</td>
<td>"read from buffered SSL brigade, mode 0, 17 bytes"</td>
</tr>
<tr>
<td><code>trace5</code> </td>
<td>Messages de traces</td>
<td>"map lookup FAILED: map=rewritemap key=keyname"</td>
</tr>
<tr>
<td><code>trace6</code> </td>
<td>Messages de traces</td>
<td>"cache lookup FAILED, forcing new map lookup"</td>
</tr>
<tr>
<td><code>trace7</code> </td>
<td>Messages de traces, enregistrement d'une grande quantit de
donnes</td>
<td>"| 0000: 02 23 44 30 13 40 ac 34 df 3d bf 9a 19 49 39 15 |"</td>
</tr>
<tr>
<td><code>trace8</code> </td>
<td>Messages de traces, enregistrement d'une grande quantit de
donnes</td>
<td>"| 0000: 02 23 44 30 13 40 ac 34 df 3d bf 9a 19 49 39 15 |"</td>
</tr>
</table>
<p>Lorsqu'un niveau particulier est spcifi, les messages de tous
les autres niveaux de criticit suprieure seront aussi enregistrs.
<em>Par exemple</em>, si <code>LogLevel info</code> est spcifi,
les messages de niveaux <code>notice</code> et <code>warn</code>
seront aussi mis.</p>
<p>Il est recommand d'utiliser un niveau <code>crit</code> ou
infrieur.</p>
<p>Par exemple :</p>
<pre class="prettyprint lang-config">LogLevel notice</pre>
<div class="note"><h3>Note</h3>
<p>Si la journalisation s'effectue directement dans un fichier,
les messages de niveau <code>notice</code> ne peuvent pas tre
supprims et sont donc toujours journaliss. Cependant, ceci ne
s'applique pas lorsque la journalisation s'effectue vers
<code>syslog</code>.</p>
</div>
<p>Spcifier un niveau sans nom de module va attribuer ce niveau
tous les modules. Spcifier un niveau avec nom de module va
attribuer ce niveau ce module seulement. Il est possible de
spcifier un module par le nom de son fichier source ou par son
identificateur, avec ou sans le suffixe <code>_module</code>. Les
trois spcifications suivantes sont donc quivalentes :</p>
<pre class="prettyprint lang-config">LogLevel info ssl:warn
LogLevel info mod_ssl.c:warn
LogLevel info ssl_module:warn</pre>
<p>Il est aussi possible d'attribuer un niveau de journalisation par
rpertoire :</p>
<pre class="prettyprint lang-config">LogLevel info
<Directory "/usr/local/apache/htdocs/app">
LogLevel debug
</Directory></pre>
<div class="note">
La configuration du niveau de journalisation par rpertoire
n'affecte que les messages journaliss aprs l'interprtation de
la requte et qui sont associs cette dernire. Les messages
de journalisation associs la connexion ou au serveur ne sont
pas affects.
</div>
<h3>Voir aussi</h3>
<ul>
<li><code class="directive"><a href="#errorlog">ErrorLog</a></code></li>
<li><code class="directive"><a href="#errorlogformat">ErrorLogFormat</a></code></li>
<li><a href="../logs.html">Journaux du serveur HTTP Apache</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="maxkeepaliverequests" id="maxkeepaliverequests">Directive</a> <a name="MaxKeepAliveRequests" id="MaxKeepAliveRequests">MaxKeepAliveRequests</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre de requtes permises pour une connexion
persistante</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxKeepAliveRequests <var>nombre</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>MaxKeepAliveRequests 100</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
</table>
<p>La directive <code class="directive">MaxKeepAliveRequests</code> permet
de limiter le nombre de requtes autorises par connexion lorsque
<code class="directive"><a href="#keepalive">KeepAlive</a></code> est "on". Si sa
valeur est <code>0</code>, le nombre de requtes autorises est
illimit. Il est recommand de dfinir une valeur assez haute pour
des performances du serveur maximales.</p>
<p>Par exemple :</p>
<pre class="prettyprint lang-config">MaxKeepAliveRequests 500</pre>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="maxrangeoverlaps" id="maxrangeoverlaps">Directive</a> <a name="MaxRangeOverlaps" id="MaxRangeOverlaps">MaxRangeOverlaps</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre de chevauchements de segments de donnes autoris
(par exemple <code>100-200,150-300</code>) avant le renvoi de la
ressource complte</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxRangeOverlaps default | unlimited | none | <var>nombre de
chevauchements</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>MaxRangeOverlaps 20</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, rpertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.3.15 du serveur HTTP
Apache</td></tr>
</table>
<p>La directive <code class="directive">MaxRangeOverlaps</code> permet
de limiter le nombre de chevauchements de segments de donnes HTTP
autoris par le serveur. Si le nombre de
chevauchements de segments demand est suprieur au nombre maximal
autoris, la ressource sera renvoye dans son intgralit.</p>
<dl>
<dt><strong>default</strong></dt>
<dd>Limite le nombre de chevauchements de segments la valeur
par dfaut 20 dfinie la compilation.</dd>
<dt><strong>none</strong></dt>
<dd>Aucun chevauchement de segment n'est autoris.</dd>
<dt><strong>unlimited</strong></dt>
<dd>Le nombre de chevauchements de segments est illimit.</dd>
<dt><var>number-of-ranges</var></dt>
<dd>Un nombre positif reprsente le nombre maximal de
chevauchements de segments autoris par le serveur.</dd>
</dl>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="maxrangereversals" id="maxrangereversals">Directive</a> <a name="MaxRangeReversals" id="MaxRangeReversals">MaxRangeReversals</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre d'inversions d'ordre autoris dans la spcification des
segments de donnes (par exemple <code>100-200,50-70</code>) avant le renvoi de la
ressource complte</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxRangeReversals default | unlimited | none | <var>nombre
d'inversions</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>MaxRangeReversals 20</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, rpertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.3.15 du serveur HTTP
Apache</td></tr>
</table>
<p>La directive <code class="directive">MaxRangeReversals</code> permet
de limiter le nombre d'inversions d'ordre dans la spcification
des segments de donnes HTTP
autoris par le serveur. Si le nombre
d'inversions demand est suprieur au nombre maximal
autoris, la ressource sera renvoye dans son intgralit.</p>
<dl>
<dt><strong>default</strong></dt>
<dd>Limite le nombre d'inversions la valeur
par dfaut 20 dfinie la compilation.</dd>
<dt><strong>none</strong></dt>
<dd>Aucune inversion n'est autorise.</dd>
<dt><strong>unlimited</strong></dt>
<dd>Le nombre d'inversions est illimit.</dd>
<dt><var>number-of-ranges</var></dt>
<dd>Un nombre positif reprsente le nombre maximal
d'inversions autoris par le serveur.</dd>
</dl>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="maxranges" id="maxranges">Directive</a> <a name="MaxRanges" id="MaxRanges">MaxRanges</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre de segments de donnes autoris avant le renvoi de
l'intgralit de la ressource</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxRanges default | unlimited | none | <var>nombre de segments</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>MaxRanges 200</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, rpertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.3.15 du serveur HTTP
Apache</td></tr>
</table>
<p>La directive <code class="directive">MaxRanges</code> permet de limiter
le nombre de segments de donnes que le serveur va renvoyer au
client. Si un nombre de segments plus important est demand, la
ressource sera renvoye dans son intgralit.</p>
<dl>
<dt><strong>default</strong></dt>
<dd>Limite le nombre de segments de donnes 200 (valeur par
dfaut dfinie la compilation).</dd>
<dt><strong>none</strong></dt>
<dd>Les en-ttes Range sont ignors.</dd>
<dt><strong>unlimited</strong></dt>
<dd>Le nombre de segments de donnes est illimit.</dd>
<dt><var>nombre de segments</var></dt>
<dd>Un nombre positif reprsentera la nombre de segments de
donnes maximal que le serveur renverra au client.</dd>
</dl>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="mergetrailers" id="mergetrailers">Directive</a> <a name="MergeTrailers" id="MergeTrailers">MergeTrailers</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dtermine si les donnes supplmentaires (trailers) sont
fusionnes avec les en-ttes</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MergeTrailers [on|off]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>MergeTrailers off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible partir de la version 2.4.11 du serveur HTTP
Apache</td></tr>
</table>
<p>Cette directive permet de contrler la fusion des donnes HTTP
supplmentaires (trailers) avec la reprsentation interne des
en-ttes. Cette fusion intervient lorsque le corps de la requte a
t entirement reu, bien longtemps aprs que la majeure partie du
traitement des en-ttes ait une chance de pouvoir examiner ou
modifier les en-ttes de la requte.</p>
<p>Cette option a t introduite dans un souci de compatibilit avec
les versions antrieures 2.4.11, o les donnes supplmentaires
taient systmatiquement fusionnes avec les en-ttes de la requte.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="mutex" id="mutex">Directive</a> <a name="Mutex" id="Mutex">Mutex</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dfinit les mcanismes de mutex et le repertoire du fichier
verrou pour tous les mutex ou seulement les mutex spcifis</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Mutex <var>mcanisme</var> [default|<var>nom-mutex</var>] ... [OmitPID]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>Mutex default</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Disponible depuis la version 2.3.4 du serveur HTTP Apache</td></tr>
</table>
<p>La directive <code class="directive">Mutex</code> permet de dfinir le
mcanisme de mutex, et ventuellement le rpertoire du fichier
verrou que les modules et httpd utilisent pour srialiser l'accs aux
ressources. Spcifiez <code>default</code> comme second argument
pour modifier la configuration de tous les mutex ; spcifiez un nom
de mutex (voir la table ci-dessous) comme second argument pour
ne modifier que la configuration de ce mutex.</p>
<p>La directive <code class="directive">Mutex</code> est typiquement
utilise dans les situations exceptionnelles suivantes :</p>
<ul>
<li>choix d'un autre mcanisme de mutex lorsque le mcanisme par
dfaut slectionn par <a class="glossarylink" href="../glossary.html#apr" title="voir glossaire">APR</a> prsente un
problme de fonctionnement ou de performances.</li>
<li>choix d'un autre rpertoire utilis par les mutex base de
fichier lorsque le rpertoire par dfaut ne supporte pas le
verrouillage</li>
</ul>
<div class="note"><h3>Modules supports</h3>
<p>Cette directive ne configure que les mutex qui ont t
enregistrs avec le serveur de base via l'API
<code>ap_mutex_register()</code>. Tous les modules fournis avec
httpd supportent la directive <code class="directive">Mutex</code>, mais il
n'en sera pas forcment de mme pour les modules tiers.
Reportez-vous la documentation du module tiers considr afin de
dterminer le(s) nom(s) de mutex qui pourront tre dfinis si la
directive est supporte.</p>
</div>
<p>Les <em>mcanismes</em> de mutex disponibles sont les suivants :</p>
<ul>
<li><code>default | yes</code>
<p>C'est l'implmentation du verrouillage par dfaut, telle
qu'elle est dfinie par <a class="glossarylink" href="../glossary.html#apr" title="voir glossaire">APR</a>. On peut
afficher l'implmentation du verrouillage par dfaut via la
commande <code class="program"><a href="../programs/httpd.html">httpd</a></code> avec l'option <code>-V</code>.</p></li>
<li><code>none | no</code>
<p>Le mutex est dsactiv, et cette valeur n'est permise pour un
mutex que si le module indique qu'il s'agit d'un choix valide.
Consultez la documentation du module pour plus d'informations.</p></li>
<li><code>posixsem</code>
<p>Une variante de mutex base sur un smaphore Posix.</p>
<div class="warning"><h3>Avertissement</h3>
<p>La proprit du smaphore n'est pas restitue si un thread du
processus grant le mutex provoque une erreur de segmentation,
ce qui provoquera un blocage du serveur web.</p>
</div>
</li>
<li><code>sysvsem</code>
<p>Une variante de mutex base sur un smaphore IPC SystemV.</p>
<div class="warning"><h3>Avertissement</h3>
<p>Il peut arriver que les smaphores SysV soient conservs si le
processus se crashe avant que le smaphore ne soit supprim.</p>
</div>
<div class="warning"><h3>Scurit</h3>
<p>L'API des smaphores permet les attaques par dni de service
par tout programme CGI s'excutant sous le mme uid que le
serveur web (autrement dit tous les programmes CGI, moins que
vous n'utilisiez un programme du style <code class="program"><a href="../programs/suexec.html">suexec</a></code>
ou <code>cgiwrapper</code>).</p>
</div>
</li>
<li><code>sem</code>
<p>Slection de la "meilleure" implmentation des smaphores
disponible ; le choix s'effectue entre les smaphores posix et
IPC SystemV, dans cet ordre.</p></li>
<li><code>pthread</code>
<p>Une variante de mutex base de mutex de thread Posix
inter-processus.</p>
<div class="warning"><h3>Avertissement</h3>
<p>Sur la plupart des systmes, si un processus enfant se
termine anormalement alors qu'il dtenait un mutex qui utilise
cette implmentation, le serveur va se bloquer et cesser de
rpondre aux requtes. Dans ce cas, un redmarrage manuel est
ncessaire pour rcuprer le mutex.</p>
<p>Solaris et Linux constituent des exceptions notables, en ceci qu'ils fournissent
un mcanisme qui permet en gnral de rcuprer le mutex aprs
l'arrt anormal d'un processus enfant qui dtenait le mutex.</p>
<p>Si votre systme est compatible POSIX ou implmente la fonction
<code>pthread_mutexattr_setrobust_np()</code>, vous devriez
pouvoir utiliser l'option <code>pthread</code> sans problme.</p>
</div>
</li>
<li><code>fcntl:/chemin/vers/mutex</code>
<p>Une variante de mutex utilisant un fichier verrou physique et
la fonction <code>fcntl()</code>.</p>
<div class="warning"><h3>Avertissement</h3>
<p>Lorsqu'on utilise plusieurs mutex bass sur ce mcanisme dans
un environnement multi-processus, multi-thread, des erreurs de
blocage (EDEADLK) peuvent tre rapportes pour des oprations de
mutex valides si la fonction <code>fcntl()</code> ne gre pas
les threads, comme sous Solaris.</p>
</div>
</li>
<li><code>flock:/chemin/vers/mutex</code>
<p>Mthode similaire <code>fcntl:/chemin/vers/mutex</code>,
mais c'est la fonction <code>flock()</code> qui est utilise
pour grer le verrouillage par fichier.</p></li>
<li><code>file:/chemin/vers/mutex</code>
<p>Slection de la "meilleure" implmentation de verrouillage
par fichier disponible ; le choix s'effectue entre
<code>fcntl</code> et <code>flock</code>, dans cet ordre.</p></li>
</ul>
<p>La plupart des mcanismes ne sont disponibles que sur les
plate-formes o ces dernires et <a class="glossarylink" href="../glossary.html#apr" title="voir glossaire">APR</a> les
supportent. Les mcanismes qui ne sont pas disponibles sur toutes
les plate-formes sont <em>posixsem</em>,
<em>sysvsem</em>, <em>sem</em>, <em>pthread</em>, <em>fcntl</em>,
<em>flock</em>, et <em>file</em>.</p>
<p>Avec les mcanismes base de fichier <em>fcntl</em> et
<em>flock</em>, le chemin, s'il est fourni, est un rpertoire dans
lequel le fichier verrou sera cr. Le rpertoire par
dfaut est le rpertoire d'excution de httpd relatif la
directive <code class="directive"><a href="#serverroot">ServerRoot</a></code>.
Utilisez toujours un systme
de fichiers local sur disque pour <code>/chemin/vers/mutex</code> et
jamais un rpertoire se trouvant dans un systme de fichiers NFS ou
AFS. Le nom de base du fichier se composera du type de mutex, d'une
chane optionnelle correspondant l'instance et fournie par le
module ; et, sauf si le mot-cl <code>OmitPID</code> a t spcifi,
l'identificateur du processus parent httpd sera ajout afin de
rendre le nom du fichier unique, vitant ainsi tout conflit lorsque
plusieurs instances d'httpd partagent le mme rpertoire de
verrouillage. Par exemple, si le nom de mutex est
<code>mpm-accept</code>, et si le rpertoire de verrouillage est
<code>/var/httpd/locks</code>, le nom du fichier verrou pour
l'instance httpd dont le processus parent a pour identifiant 12345
sera <code>/var/httpd/locks/mpm-accept.12345</code>.</p>
<div class="warning"><h3>Scurit</h3>
<p>Il est conseill d'<em>viter</em> de placer les fichiers mutex
dans un rpertoire o tout le monde peut crire comme
<code>/var/tmp</code>, car quelqu'un pourrait initier une attaque
par dni de service et empcher le serveur de dmarrer en crant un
fichier verrou possdant un nom identique celui que le serveur va
tenter de crer.</p>
</div>
<p>La table suivante dcrit les noms de mutex utiliss par httpd et
ses modules associs.</p>
<table class="bordered"><tr class="header">
<th>Nom mutex</th>
<th>Module(s)</th>
<th>Ressource protge</th>
</tr>
<tr>
<td><code>mpm-accept</code></td>
<td>modules MPM <code class="module"><a href="../mod/prefork.html">prefork</a></code> et <code class="module"><a href="../mod/worker.html">worker</a></code></td>
<td>connexions entrantes, afin d'viter le problme de
l'afflux de requtes ; pour plus d'informations, voir la
documentation <a href="../misc/perf-tuning.html">Amlioration des
performances</a></td>
</tr>
<tr class="odd">
<td><code>authdigest-client</code></td>
<td><code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code></td>
<td>liste de clients en mmoire partage</td>
</tr>
<tr>
<td><code>authdigest-opaque</code></td>
<td><code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code></td>
<td>compteur en mmoire partage</td>
</tr>
<tr class="odd">
<td><code>ldap-cache</code></td>
<td><code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code></td>
<td>cache de rsultat de recherche LDAP</td>
</tr>
<tr>
<td><code>rewrite-map</code></td>
<td><code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code></td>
<td>communication avec des programmes externes
d'associations de valeurs, afin d'viter les interfrences
d'entres/sorties entre plusieurs requtes</td>
</tr>
<tr class="odd">
<td><code>ssl-cache</code></td>
<td><code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code></td>
<td>cache de session SSL</td>
</tr>
<tr>
<td><code>ssl-stapling</code></td>
<td><code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code></td>
<td>cache de l'tiquetage OCSP ("OCSP stapling")</td>
</tr>
<tr class="odd">
<td><code>watchdog-callback</code></td>
<td><code class="module"><a href="../mod/mod_watchdog.html">mod_watchdog</a></code></td>
<td>fonction de rappel d'un module client particulier</td>
</tr>
</table>
<p>Le mot-cl <code>OmitPID</code> permet d'empcher l'addition de
l'identifiant du processus httpd parent au nom du fichier verrou.</p>
<p>Dans l'exemple suivant, le mcanisme de mutex pour le mutex
mpm-accept est modifi pour passer du mcanisme par dfaut au
mcanisme <code>fcntl</code>, avec le fichier verrou associ cr
dans le rpertoire <code>/var/httpd/locks</code>. Le mcanisme de
mutex par dfaut pour tous les autres mutex deviendra
<code>sysvsem</code>.</p>
<pre class="prettyprint lang-config">Mutex sysvsem default
Mutex fcntl:/var/httpd/locks mpm-accept</pre>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="namevirtualhost" id="namevirtualhost">Directive</a> <a name="NameVirtualHost" id="NameVirtualHost">NameVirtualHost</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>OBSOLETE : Dfinit une adresse IP pour les serveurs virtuels base de
nom</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>NameVirtualHost <var>adresse</var>[:<var>port</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
</table>
<p>Avant la version 2.3.11, il tait ncessaire de dfinir une
directive <code class="directive">NameVirtualHost</code> pour indiquer au
serveur qu'une paire adresse IP/port particulire pouvait tre
utilise comme serveur virtuel base de nom. Depuis la version
2.3.11, chaque fois qu'une paire adresse IP/port est utilise dans
plusieurs serveurs virtuels, l'hbergement virtuel base de nom est
automatiquement activ pour cette adresse.</p>
<p>Cette directive n'a actuellement plus aucun effet.</p>
<h3>Voir aussi</h3>
<ul>
<li><a href="../vhosts/">Documentation sur les serveurs
virtuels</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="options" id="options">Directive</a> <a name="Options" id="Options">Options</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dfinit les fonctionnalits disponibles pour un rpertoire
particulier</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Options
[+|-]<var>option</var> [[+|-]<var>option</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Default">Dfaut:</a></th><td><code>Options FollowSymlinks</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, rpertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Options</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit:</a></th><td>Avec la version 2.3.11, la valeur par dfaut passe de All
FollowSymlinks</td></tr>
</table>
<p>La directive <code class="directive">Options</code> permet de dfinir
les fonctionnalits de serveur disponibles pour un rpertoire
particulier.</p>
<p><var>option</var> peut tre dfini <code>None</code>, auquel
cas aucune fonctionnalit spcifique n'est active, ou comprendre
une ou plusieurs des options suivantes :</p>
<dl>
<dt><code>All</code></dt>
<dd>Toutes les options except <code>MultiViews</code>.</dd>
<dt><code>ExecCGI</code></dt>
<dd>L'excution de scripts CGI l'aide du module
<code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> est permise.</dd>
<dt><code>FollowSymLinks</code></dt>
<dd>
Le serveur va suivre les liens symboliques dans le rpertoire
concern. Il s'agit de la valeur par dfaut.
<div class="note">
<p>Bien que le serveur suive les liens symboliques, il ne modifie
<em>pas</em> le nom de chemin concern dfini par la section
<code class="directive"><a href="#directory"><Directory></a></code>.</p>
<p>Les options <code>FollowSymLinks</code> et
<code>SymLinksIfOwnerMatch</code> ne fonctionnent que dans les
sections <code class="directive"><a href="#directory"><Directory></a></code> ou les fichiers
<code>.htaccess</code>.</p>
<p>Le fait d'omettre cette option ne doit pas tre considr comme
une mesure de scurit efficace, car il existe toujours une
situation de comptition (race condition) entre l'instant o l'on
vrifie qu'un chemin n'est pas un lien symbolique, et l'instant o
l'on utilise effectivement ce chemin.</p>
</div></dd>
<dt><code>Includes</code></dt>
<dd>
Les inclusions ct serveur (SSI) l'aide du module
<code class="module"><a href="../mod/mod_include.html">mod_include</a></code> sont autorises.</dd>
<dt><code>IncludesNOEXEC</code></dt>
<dd>
Les inclusions ct serveur (SSI) sont permises, mais <code>#exec
cmd</code> et <code>#exec cgi</code> sont dsactivs.
L'utilisation de <code>#include virtual</code> pour les scripts
CGI est cependant toujours possible depuis des rpertoires
dfinis par <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>.</dd>
<dt><code>Indexes</code></dt>
<dd>
Si une URL requise correspond au rpertoire concern, et si aucun
<code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code> (<em>par
exemple</em> <code>index.html</code>) n'est dfini pour ce
rpertoire, le module <code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code> va renvoyer
un listing format du rpertoire.</dd>
<dt><code>MultiViews</code></dt>
<dd>
Les vues multiples ("multiviews") <a href="../content-negotiation.html">contenu ngoci</a> l'aide du
module <code class="module"><a href="../mod/mod_negotiation.html">mod_negotiation</a></code> sont autorises.
<div class="note"><h3>Note</h3> <p>Cette option est ignore si elle est
dfinie en tout autre endroit qu'une section <code class="directive"><a href="#directory"><Directory></a></code>, car
<code class="module"><a href="../mod/mod_negotiation.html">mod_negotiation</a></code> a besoin de ressources relles
pour effectuer ses comparaisons et ses valuations.</p></div>
</dd>
<dt><code>SymLinksIfOwnerMatch</code></dt>
<dd>Le serveur ne suivra que les liens symboliques qui renvoient
vers un fichier ou un rpertoire dont le propritaire est le mme
que celui du lien.
<div class="note"><h3>Note</h3>
<p>Les options <code>FollowSymLinks</code> et
<code>SymLinksIfOwnerMatch</code> ne fonctionnent que dans les
sections <code class="directive"><a href="#directory"><Directory></a></code> ou les fichiers
<code>.htaccess</code>.</p>
<p>Le fait d'omettre cette option ne doit pas tre considr comme
une mesure de scurit efficace, car il existe toujours une
situation de comptition (race condition) entre l'instant o l'on
vrifie qu'un chemin n'est pas un lien symbolique, et l'instant o
l'on utilise effectivement ce chemin.</p>
</div> </dd>
</dl>
<p>Normalement, si plusieurs directives
<code class="directive">Options</code> peuvent s'appliquer un rpertoire,
c'est la plus spcifique qui est utilise et les autres sont
ignores ; les options ne sont pas fusionnes (voir <a href="../sections.html#merging">comment les sections sont
fusionnes</a>). Elles le sont cependant si <em>toutes</em> les
options de la directive <code class="directive">Options</code> sont
prcdes d'un symbole <code>+</code> ou <code>-</code>. Toute
option prcde d'un <code>+</code> est ajoute la liste des
options courantes de manire force et toute option prcde d'un
<code>-</code> est supprime de la liste des options courantes de la
mme manire.</p>
<div class="note"><h3>Note</h3>
<p>Mlanger des <code class="directive">Options</code> avec <code>+</code>
ou <code>-</code> avec des <code class="directive">Options</code> sans
<code>+</code> ou <code>-</code> constitue une erreur de syntaxe, et
la vrification de la syntaxe au cours du dmarrage du serveur fera
chouer ce dernier.</p>
</div>
<p>Par exemple, sans aucun symbole <code>+</code> et <code>-</code>
:</p>
<pre class="prettyprint lang-config"><Directory "/web/docs">
Options Indexes FollowSymLinks
</Directory>
<Directory "/web/docs/spec">
Options Includes
</Directory></pre>
<p>ici, seule l'option <code>Includes</code> sera prise en compte
pour le rpertoire <code>/web/docs/spec</code>. Par contre, si la
seconde directive <code class="directive">Options</code> utilise les
symboles <code>+</code> et <code>-</code> :</p>
<pre class="prettyprint lang-config"><Directory "/web/docs">
Options Indexes FollowSymLinks
</Directory>