<!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.4</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.4</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.4</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 illustre 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'addresse de l'h&ocirc;te de vos visiteurs, le
    plus simple pour y parvenir consiste &agrave; utiliser 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>

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


    <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>

    <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. Notez que le mot <code>not</code> &eacute;tant la
    n&eacute;gation d'une valeur, il ne peut pas &ecirc;tre utilis&eacute; pour autoriser
    ou interdire une requ&ecirc;te, car <em>non vrai</em> ne
    sera pas interpret&eacute; par httpd comme <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 &eacute;valu&eacute; &agrave; vrai ou faux.
    Par exemple, si quelqu'un est en train d'inonder
    votre forum de messages ind&eacute;sirables, vous pouvez ajouter cette ligne pour lui refuser
    l'acc&egrave;s :</p>

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


    <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 interdire
    l'acc&egrave;s &agrave; une machine en fonction de son nom, vous pouvez ajouter
    ceci :</p>

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


    <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>

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


    <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> permettent &eacute;galement de pr&eacute;ciser 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>

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


    <p>La syntaxe <code>expr</code> de la directive <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code> permet de r&eacute;&eacute;crire
    l'exemple pr&eacute;c&eacute;dent de la mani&egrave;re suivante :</p>


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


    <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>

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


    <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>, introduite &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>