<!DOCTYPE html SYSTEM "about:legacy-compat">
<html lang="fr"><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta content="width=device-width, initial-scale=1" name="viewport">
<!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>Contr&ocirc;le d'acc&egrave;s - Serveur HTTP Apache Version 2.5</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet">
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size">
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css"><link rel="stylesheet" type="text/css" href="../style/css/prettify.css">
<script src="../style/scripts/prettify.min.js">
</script>

<link href="../images/favicon.png" rel="shortcut icon"></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Signaler un bug</a></p>
<p class="apache">Serveur HTTP Apache Version 2.5</p>
<img alt="" src="../images/feather.png"></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif"></a></div>
<div id="path">
<a href="https://www.apache.org/">Apache</a> &gt; <a href="https://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="https://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">How-To / Tutoriels</a></div><div id="page-content"><div id="preamble"><h1>Contr&ocirc;le d'acc&egrave;s</h1>
<button aria-label="Toggle language list" class="lang-toggle"><svg xmlns="http://www.w3.org/2000/svg" stroke-width="2" stroke="currentColor" fill="none" viewBox="0 0 24 24" height="16" width="16"><circle r="10" cy="12" cx="12"/><line y2="12" x2="22" y1="12" x1="2"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/></svg></button>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/howto/access.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../es/howto/access.html" hreflang="es" rel="alternate" title="Espa&ntilde;ol">&nbsp;es&nbsp;</a> |
<a href="../fr/howto/access.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a></p>
</div>

    <p>Le contr&ocirc;le d'acc&egrave;s fait r&eacute;f&eacute;rence &agrave; tout concept de contr&ocirc;le
    d'acc&egrave;s &agrave; une ressource quelconque. Il est distinct du processus d'<a href="auth.html">authentification et d'autorisation</a>.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif"> <a href="#related">Modules et directives concern&eacute;s</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#host">Contr&ocirc;le d'acc&egrave;s en fonction de l'h&ocirc;te du
client</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#env">Contr&ocirc;le d'acc&egrave;s en fonction de variables
arbitraires</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#rewrite">Utilisation de mod_rewrite pour le contr&ocirc;le
d'acc&egrave;s</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#moreinformation">Informations compl&eacute;mentaires</a></li>
</ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="related">Modules et directives concern&eacute;s <a title="Lien permanent" href="#related" class="permalink">&para;</a></h2>

    <p>Plusieurs modules peuvent intervenir dans le contr&ocirc;le d'acc&egrave;s.
    Les plus importants sont <code class="module"><a href="../mod/mod_authz_core.html">mod_authz_core</a></code> et
    <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code>. Ce document &eacute;galement aussi comment
    utiliser <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> pour le contr&ocirc;le
    d'acc&egrave;s.</p>

</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="host">Contr&ocirc;le d'acc&egrave;s en fonction de l'h&ocirc;te du
client <a title="Lien permanent" href="#host" class="permalink">&para;</a></h2>
    <p>
    Si vous souhaitez restreindre l'acc&egrave;s &agrave; certaines parties de votre site web
    en fonction de l'adresse de l'h&ocirc;te de vos visiteurs, utilisez le module
    <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code>.
    </p>

    <p>La directive <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code> permet d'accorder ou
    d'interdire l'acc&egrave;s &agrave; certaines ressources de diff&eacute;rentes mani&egrave;res.
    Ces crit&egrave;res d'acc&egrave;s, en conjonction avec les directives <code class="directive"><a href="../mod/mod_authz_core.html#requireall">RequireAll</a></code>, <code class="directive"><a href="../mod/mod_authz_core.html#requireany">RequireAny</a></code>, et <code class="directive"><a href="../mod/mod_authz_core.html#requirenone">RequireNone</a></code>, peuvent &ecirc;tre
    combin&eacute;s d'une mani&egrave;re suffisamment complexe pour
    satisfaire votre politique de contr&ocirc;le d'acc&egrave;s.</p>

    <div class="warning"><p>
    Les directives <code class="directive"><a href="../mod/mod_access_compat.html#allow">Allow</a></code>, <code class="directive"><a href="../mod/mod_access_compat.html#deny">Deny</a></code>, et <code class="directive"><a href="../mod/mod_access_compat.html#order">Order</a></code> fournies par le module
    <code class="module"><a href="../mod/mod_access_compat.html">mod_access_compat</a></code> sont obsol&egrave;tes, et sont appel&eacute;es &agrave;
    dispara&icirc;tre dans les versions futures. Il est donc d&eacute;conseill&eacute; de
    les utiliser, et de se fier aux tutoriels qui recommandent leur
    utilisation.
    </p></div>

    <p>Les directives Require s'utilisent comme suit :</p>

<div class="example"><pre class="prettyprint lang-config">Require host <var>address</var>
Require ip <var>ip.address</var>
</pre>
</div>

    <p>Dans la premi&egrave;re forme, <var>nom-h&ocirc;te</var> est un nom de domaine
    pleinement qualifi&eacute; (fqdn), ou un nom de domaine partiel ; vous
    pouvez sp&eacute;cifier plusieurs noms de domaines, si vous le d&eacute;sirez.</p>

    <p>Dans la seconde forme, <var>adresse-ip</var> est une adresse IP
    compl&egrave;te, une adresse IP partielle, une paire r&eacute;seau/masque de
    sous-r&eacute;seau ou une sp&eacute;cification CIDR de la forme r&eacute;seau/nnn. Il est
    possible de sp&eacute;cifier des adresses IPv4 ou IPv6.</p>

<div class="example"><h3>Exemples de formats d&rsquo;adresse IP</h3><pre class="prettyprint lang-config"># Adresse IP compl&egrave;te
Require ip 10.2.3.4
# Adresse IP partielle (correspond &agrave; tout h&ocirc;te dans la tranche 172.20.0.0/16)
Require ip 172.20
# Paire r&eacute;seau/masque
Require ip 192.168.1.0/255.255.255.0
# Sp&eacute;cification r&eacute;seau/CIDR
Require ip 192.168.1.0/24
# Adresse IPv6
Require ip 2001:db8::a00:20ff:fea7:ccea
# Adresse IPv6 avec CIDR
Require ip 2001:db8:1::/48</pre>
</div>

    <p>Voir <a href="../mod/mod_authz_host.html#requiredirectives">la
    documentation de mod_authz_host</a> pour d'autres exemples de cette
    syntaxe.</p>

    <p>Vous pouvez ins&eacute;rer le mot-cl&eacute; <code>not</code> pour inverser un
    crit&egrave;re particulier. Le mot <code>not</code> r&eacute;alise la
    n&eacute;gation sur la valeur, et ne peut pas &ecirc;tre utilis&eacute; seul pour autoriser
    ou interdire une requ&ecirc;te, car <em>non vrai</em> ne
    veut pas ici forc&eacute;ment dire <em>faux</em>. Ainsi, pour interdire la
    visite d'une page &agrave; l'aide d'une n&eacute;gation, le bloc doit contenir un
    &eacute;l&eacute;ment, qui sera &eacute;valu&eacute; &agrave; l'une des valeurs vrai ou faux.
    Par exemple, si quelqu'un est en train de
    spamer votre forum, vous pouvez ajouter cette ligne pour lui refuser
    l'acc&egrave;s :</p>

<div class="example"><pre class="prettyprint lang-config">&lt;RequireAll&gt;
Require all granted
Require not ip 10.252.46.165
&lt;/RequireAll&gt;</pre>
</div>

    <p>Les visiteurs poss&eacute;dant cette adresse (<code>10.252.46.165</code>) ne pourront pas voir le
    contenu concern&eacute; par cette directive. Si vous voulez interdir
    l'acc&egrave;s &agrave; une machine en fonction de son nom, vous pouvez ajouter
    ceci :</p>

<div class="example"><pre class="prettyprint lang-config">Require not host <var>host.example.com</var>
</pre>
</div>

    <p>Et si vous voulez interdire l'acc&egrave;s &agrave; un domaine particulier,
    vous pouvez sp&eacute;cifier des adresses IP partielles ou des noms de
    domaine, comme ceci :</p>

<div class="example"><pre class="prettyprint lang-config">Require not ip 192.168.205
Require not host phishers.example.com badguys.example
Require not host gov</pre>
</div>

    <p>Les directives <code class="directive"><a href="../mod/mod_authz_core.html#requireall">RequireAll</a></code>, <code class="directive"><a href="../mod/mod_authz_core.html#requireany">RequireAny</a></code>, et <code class="directive"><a href="../mod/mod_authz_core.html#requirenone">RequireNone</a></code> ouvrent le champ &agrave; des
    crit&egrave;res d'acc&egrave;s plus complexes.</p>

</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="env">Contr&ocirc;le d'acc&egrave;s en fonction de variables
arbitraires <a title="Lien permanent" href="#env" class="permalink">&para;</a></h2>

    <p>Vous pouvez accorder ou refuser l'acc&egrave;s en fonction de variables
    d'environnement arbitraires ou de valeurs d'en-t&ecirc;tes de la requ&ecirc;te
    en utilisant la directive <code class="directive"><a href="../mod/core.html#if">&lt;If&gt;</a></code>. Par exemple, pour interdire l'acc&egrave;s en
    fonction du user-agent (le type de navigateur), vous pouvez
    sp&eacute;cifier ceci :</p>

<div class="example"><pre class="prettyprint lang-config">&lt;If "%{HTTP_USER_AGENT} == 'BadBot'"&gt;
Require all denied
&lt;/If&gt;</pre>
</div>

    <p>En utilisant la syntaxe <code>expr</code> de la directive
    <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code>, l'exemple
    pr&eacute;c&eacute;dent peut aussi s'&eacute;crire :</p>


<div class="example"><pre class="prettyprint lang-config">Require expr %{HTTP_USER_AGENT} != 'BadBot'</pre>
</div>

    <div class="note"><h3>Avertissement :</h3>
    <p>Contr&ocirc;ler l'acc&egrave;s en fonction de l'en-t&ecirc;te
    <code>User-Agent</code> n'est pas une technique fiable, car cet
    en-t&ecirc;te peut &ecirc;tre d&eacute;fini &agrave; une valeur quelconque, selon le bon
    vouloir de l'utilisateur.</p>
    </div>

    <p>Voir le document &agrave; propos des <a href="../expr.html">expressions</a> pour une description plus
    approfondie des syntaxes d'expressions et des variables disponibles.</p>

</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="rewrite">Utilisation de mod_rewrite pour le contr&ocirc;le
d'acc&egrave;s <a title="Lien permanent" href="#rewrite" class="permalink">&para;</a></h2>

    <p>Le drapeau <code>[F]</code> de la directive <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> permet d'envoyer une
    r&eacute;ponse de type 403 Forbidden. Il vous permet donc d'interdire
    l'acc&egrave;s &agrave; une ressource en fonction d'un crit&egrave;re arbitraire.</p>

    <p>Par exemple, pour bloquer l'acc&egrave;s &agrave; une ressources entre 20h et
    7h du matin, vous pouvez utiliser <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> :</p>

<div class="example"><pre class="prettyprint lang-config">RewriteEngine On
RewriteCond "%{TIME_HOUR}" "&gt;=20" [OR]
RewriteCond "%{TIME_HOUR}" "&lt;07"
RewriteRule "^/fridge" "-" [F]</pre>
</div>

    <p>Toute requ&ecirc;te arrivant apr&egrave;s 20h ou avant 7h du matin provoquera
    l'envoi d'une r&eacute;ponse de type 403 Forbidden. Vous pouvez utiliser
    cette technique pour v&eacute;rifier toutes sortes de crit&egrave;res. En outre,
    si vous le pr&eacute;f&eacute;rez, vous pouvez rediriger ou r&eacute;&eacute;crire la requ&ecirc;te.</p>

    <p>Notez que la directive <code class="directive"><a href="../mod/core.html#if">&lt;If&gt;</a></code>, ajout&eacute;e &agrave; partir de la version 2.4,
    permet de remplacer le module <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> dans de
    nombreuses situations o&ugrave; il &eacute;tait traditionnellement utilis&eacute;, et
    il sera probablement pr&eacute;f&eacute;rable pour vous de tenter de l'utiliser
    avant de vous tourner vers mod_rewrite.</p>

</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="moreinformation">Informations compl&eacute;mentaires <a title="Lien permanent" href="#moreinformation" class="permalink">&para;</a></h2>

    <p>Le <a href="../expr.html">moteur d'expressions</a> vous fournit
    une grande puissance d'action en fonction de variables du serveur
    arbitraires, et il vous est conseill&eacute; de consulter le document
    correspondant pour plus de d&eacute;tails.</p>

    <p>De m&ecirc;me, vous devez lire la documentation du module
    <code class="module"><a href="../mod/mod_authz_core.html">mod_authz_core</a></code> pour des exemples de combinaison de
    crit&egrave;res d'acc&egrave;s multiples, et en particulier la mani&egrave;re dont ces
    derniers interagissent.</p>

    <p>Voir aussi le How-To <a href="auth.html">Authentification and
    autorisation</a>.</p>

    <p>Voir la <a href="../sections.html#merging">documentation sur la fusion
    des sections de configuration</a> pour un avertissement &agrave; propos de la
    mani&egrave;re dont la directive <code class="directive"><a href="../mod/core.html#limit">&lt;Limit&gt;</a></code> au sein d&rsquo;une section <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code> peut outrepasser
    silencieusement les restrictions d&rsquo;acc&egrave;s d&rsquo;une section <code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code>.</p>
</div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/howto/access.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../es/howto/access.html" hreflang="es" rel="alternate" title="Espa&ntilde;ol">&nbsp;es&nbsp;</a> |
<a href="../fr/howto/access.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a></p>
</div><div id="footer">
<p class="apache">Copyright 2026 The Apache Software Foundation.<br>Autoris&eacute; sous <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Signaler un bug</a></p></div><script><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
    prettyPrint();
}
var langToggle = document.querySelector('.lang-toggle');
var topLang = document.querySelector('.toplang');
if (langToggle && topLang) {
    langToggle.addEventListener('click', function() { topLang.classList.toggle('open'); });
}
var qv = document.getElementById('quickview');
if (qv) {
    document.body.appendChild(qv);
    var qvBtn = document.createElement('button');
    qvBtn.className = 'qv-toggle';
    qvBtn.setAttribute('aria-label', 'Toggle page navigation');
    qvBtn.innerHTML = '&#9776;';
    document.body.appendChild(qvBtn);
    qvBtn.addEventListener('click', function() {
        var isOpen = qv.classList.toggle('open');
        if (isOpen) {
            qv.style.top = window.scrollY + 10 + 'px';
        }
    });
    window.addEventListener('scroll', function() { qv.classList.remove('open'); });
}
//--><!]]></script>
</body></html>