Linux cesa-www-main 6.1.0-49-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
Apache/2.4.68 (Debian)
Server IP : 10.218.0.2 & Your IP : 216.73.216.28
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
share /
doc /
apache2-doc /
manual /
fr /
mod /
Delete
Unzip
Name
Size
Permission
Date
Action
core.html
361.82
KB
-rw-r--r--
2026-06-12 05:08
directive-dict.html
20.54
KB
-rw-r--r--
2026-06-12 05:08
directives.html
58.25
KB
-rw-r--r--
2026-06-12 05:08
event.html
33.28
KB
-rw-r--r--
2026-06-12 05:08
index.html
27.9
KB
-rw-r--r--
2026-06-12 05:08
mod_access_compat.html
33.23
KB
-rw-r--r--
2026-06-12 05:08
mod_actions.html
13.74
KB
-rw-r--r--
2026-06-12 05:08
mod_alias.html
46.22
KB
-rw-r--r--
2026-06-12 05:08
mod_allowmethods.html
8.33
KB
-rw-r--r--
2026-06-12 05:08
mod_asis.html
9.15
KB
-rw-r--r--
2026-06-12 05:08
mod_auth_basic.html
22.6
KB
-rw-r--r--
2026-06-12 05:08
mod_auth_digest.html
23.05
KB
-rw-r--r--
2026-06-12 05:08
mod_auth_form.html
57.7
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_anon.html
18.52
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_core.html
18.41
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_dbd.html
16.96
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_dbm.html
13.86
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_file.html
12.25
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_socache.html
21.67
KB
-rw-r--r--
2026-06-12 05:08
mod_authnz_fcgi.html
30.74
KB
-rw-r--r--
2026-06-12 05:08
mod_authnz_ldap.html
93.48
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_core.html
45.36
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_dbd.html
21.01
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_dbm.html
14.15
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_groupfile.html
11.11
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_host.html
14.94
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_owner.html
12.07
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_user.html
8.39
KB
-rw-r--r--
2026-06-12 05:08
mod_autoindex.html
74.86
KB
-rw-r--r--
2026-06-12 05:08
mod_brotli.html
23.66
KB
-rw-r--r--
2026-06-12 05:08
mod_buffer.html
9.69
KB
-rw-r--r--
2026-06-12 05:08
mod_cache.html
81.11
KB
-rw-r--r--
2026-06-12 05:08
mod_cache_disk.html
22.08
KB
-rw-r--r--
2026-06-12 05:08
mod_cache_socache.html
19.8
KB
-rw-r--r--
2026-06-12 05:08
mod_cern_meta.html
11.81
KB
-rw-r--r--
2026-06-12 05:08
mod_cgi.html
22.69
KB
-rw-r--r--
2026-06-12 05:08
mod_cgid.html
12.45
KB
-rw-r--r--
2026-06-12 05:08
mod_charset_lite.html
17.03
KB
-rw-r--r--
2026-06-12 05:08
mod_data.html
7.69
KB
-rw-r--r--
2026-06-12 05:08
mod_dav.html
22.71
KB
-rw-r--r--
2026-06-12 05:08
mod_dav_fs.html
11.52
KB
-rw-r--r--
2026-06-12 05:08
mod_dav_lock.html
10.38
KB
-rw-r--r--
2026-06-12 05:08
mod_dbd.html
28.99
KB
-rw-r--r--
2026-06-12 05:08
mod_deflate.html
34.78
KB
-rw-r--r--
2026-06-12 05:08
mod_dialup.html
7.68
KB
-rw-r--r--
2026-06-12 05:08
mod_dir.html
27.64
KB
-rw-r--r--
2026-06-12 05:08
mod_dumpio.html
10.02
KB
-rw-r--r--
2026-06-12 05:08
mod_echo.html
7.36
KB
-rw-r--r--
2026-06-12 05:08
mod_env.html
12.18
KB
-rw-r--r--
2026-06-12 05:08
mod_example_hooks.html
12.06
KB
-rw-r--r--
2026-06-12 05:08
mod_expires.html
19.61
KB
-rw-r--r--
2026-06-12 05:08
mod_ext_filter.html
20.54
KB
-rw-r--r--
2026-06-12 05:08
mod_file_cache.html
18.33
KB
-rw-r--r--
2026-06-12 05:08
mod_filter.html
39.51
KB
-rw-r--r--
2026-06-12 05:08
mod_headers.html
41.18
KB
-rw-r--r--
2026-06-12 05:08
mod_heartbeat.html
9.75
KB
-rw-r--r--
2026-06-12 05:08
mod_heartmonitor.html
12.95
KB
-rw-r--r--
2026-06-12 05:08
mod_http2.html
85.5
KB
-rw-r--r--
2026-06-12 05:08
mod_ident.html
10.57
KB
-rw-r--r--
2026-06-12 05:08
mod_imagemap.html
24.56
KB
-rw-r--r--
2026-06-12 05:08
mod_include.html
70.75
KB
-rw-r--r--
2026-06-12 05:08
mod_info.html
16.11
KB
-rw-r--r--
2026-06-12 05:08
mod_isapi.html
26.77
KB
-rw-r--r--
2026-06-12 05:08
mod_lbmethod_bybusyness.html
8.23
KB
-rw-r--r--
2026-06-12 05:08
mod_lbmethod_byrequests.html
13.18
KB
-rw-r--r--
2026-06-12 05:08
mod_lbmethod_bytraffic.html
8.59
KB
-rw-r--r--
2026-06-12 05:08
mod_lbmethod_heartbeat.html
8.57
KB
-rw-r--r--
2026-06-12 05:08
mod_ldap.html
59.24
KB
-rw-r--r--
2026-06-12 05:08
mod_log_config.html
44.14
KB
-rw-r--r--
2026-06-12 05:08
mod_log_debug.html
10.92
KB
-rw-r--r--
2026-06-12 05:08
mod_log_forensic.html
15.15
KB
-rw-r--r--
2026-06-12 05:08
mod_logio.html
11.47
KB
-rw-r--r--
2026-06-12 05:08
mod_lua.html
108.75
KB
-rw-r--r--
2026-06-12 05:08
mod_macro.html
16.92
KB
-rw-r--r--
2026-06-12 05:08
mod_md.html
126.42
KB
-rw-r--r--
2026-06-12 05:08
mod_mime.html
76.65
KB
-rw-r--r--
2026-06-12 05:08
mod_mime_magic.html
18.15
KB
-rw-r--r--
2026-06-12 05:08
mod_negotiation.html
24.81
KB
-rw-r--r--
2026-06-12 05:08
mod_nw_ssl.html
9.76
KB
-rw-r--r--
2026-06-12 05:08
mod_privileges.html
35.27
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy.html
165.75
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_ajp.html
38.28
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_balancer.html
27.32
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_connect.html
10.61
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_express.html
14.2
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_fcgi.html
25.72
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_fdpass.html
7.59
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_ftp.html
22.19
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_hcheck.html
19.76
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_html.html
41.71
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_http.html
13.07
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_http2.html
10.95
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_scgi.html
16.14
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_uwsgi.html
8.6
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_wstunnel.html
11.64
KB
-rw-r--r--
2026-06-12 05:08
mod_ratelimit.html
7.25
KB
-rw-r--r--
2026-06-12 05:08
mod_reflector.html
8.9
KB
-rw-r--r--
2026-06-12 05:08
mod_remoteip.html
30.44
KB
-rw-r--r--
2026-06-12 05:08
mod_reqtimeout.html
14.19
KB
-rw-r--r--
2026-06-12 05:08
mod_request.html
10.05
KB
-rw-r--r--
2026-06-12 05:08
mod_rewrite.html
94.55
KB
-rw-r--r--
2026-06-12 05:08
mod_sed.html
12.56
KB
-rw-r--r--
2026-06-12 05:08
mod_session.html
40.92
KB
-rw-r--r--
2026-06-12 05:08
mod_session_cookie.html
14.85
KB
-rw-r--r--
2026-06-12 05:08
mod_session_crypto.html
20.25
KB
-rw-r--r--
2026-06-12 05:08
mod_session_dbd.html
28.44
KB
-rw-r--r--
2026-06-12 05:08
mod_setenvif.html
24.75
KB
-rw-r--r--
2026-06-12 05:08
mod_slotmem_plain.html
8.32
KB
-rw-r--r--
2026-06-12 05:08
mod_slotmem_shm.html
9.1
KB
-rw-r--r--
2026-06-12 05:08
mod_so.html
15.7
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_dbm.html
6.02
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_dc.html
6.08
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_memcache.html
9.14
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_redis.html
11.06
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_shmcb.html
6.13
KB
-rw-r--r--
2026-06-12 05:08
mod_speling.html
13.88
KB
-rw-r--r--
2026-06-12 05:08
mod_ssl.html
236.75
KB
-rw-r--r--
2026-06-12 05:08
mod_status.html
13.34
KB
-rw-r--r--
2026-06-12 05:08
mod_substitute.html
16.08
KB
-rw-r--r--
2026-06-12 05:08
mod_suexec.html
8.28
KB
-rw-r--r--
2026-06-12 05:08
mod_systemd.html
8.02
KB
-rw-r--r--
2026-06-12 05:08
mod_unique_id.html
18.88
KB
-rw-r--r--
2026-06-12 05:08
mod_unixd.html
15.37
KB
-rw-r--r--
2026-06-12 05:08
mod_userdir.html
14.15
KB
-rw-r--r--
2026-06-12 05:08
mod_usertrack.html
21.62
KB
-rw-r--r--
2026-06-12 05:08
mod_version.html
11.08
KB
-rw-r--r--
2026-06-12 05:08
mod_vhost_alias.html
23.44
KB
-rw-r--r--
2026-06-12 05:08
mod_watchdog.html
8.17
KB
-rw-r--r--
2026-06-12 05:08
mod_xml2enc.html
17.69
KB
-rw-r--r--
2026-06-12 05:08
module-dict.html
9.7
KB
-rw-r--r--
2026-06-12 05:08
mpm_common.html
82.09
KB
-rw-r--r--
2026-06-12 05:08
mpm_netware.html
10.67
KB
-rw-r--r--
2026-06-12 05:08
mpm_winnt.html
11.52
KB
-rw-r--r--
2026-06-12 05:08
mpmt_os2.html
7.78
KB
-rw-r--r--
2026-06-12 05:08
overrides.html
77.74
KB
-rw-r--r--
2026-06-12 05:08
prefork.html
18.13
KB
-rw-r--r--
2026-06-12 05:08
quickreference.html
217.91
KB
-rw-r--r--
2026-06-12 05:08
worker.html
16.82
KB
-rw-r--r--
2026-06-12 05:08
Save
Rename
<!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>mod_remoteip - 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> <div id="page-header"> <p class="menu"><a href="../mod/index.html">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="./index.html"><img title="<-" alt="<-" src="../../images/left.gif"></a></div> <div id="path"> <a href="https://www.apache.org/">Apache</a> > <a href="https://httpd.apache.org/">Serveur HTTP</a> > <a href="https://httpd.apache.org/docs/">Documentation</a> > <a href="../index.html">Version 2.4</a> > <a href="./index.html">Modules</a></div> <div id="page-content"> <div id="preamble"><h1>Module Apache mod_remoteip</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/mod/mod_remoteip.html" hreflang="en" rel="alternate" title="English"> en </a> | <a href="../../fr/mod/mod_remoteip.html" title="Français"> fr </a></p> </div> <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Remplace l'adresse IP du client pour la requête par l'adresse IP présentée par un mandataire ou un répartiteur de charge via les en-têtes de la requête. </td></tr> <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>remoteip_module</td></tr> <tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_remoteip.c</td></tr></table> <h3>Sommaire</h3> <p>Ce module permet de traiter le client qui a initié la requête en tant que client original du point de vue de httpd à des fins d'autorisation et de connexion, même si ce client se trouve derrière un répartiteur de charge, un serveur frontal, ou un serveur mandataire.</p> <p>Le module remplace l'adresse IP du client pour la connexion par l'adresse IP indiquée dans l'en-tête de requête configuré via la directive <code class="directive"><a href="#remoteipheader">RemoteIPHeader</a></code>.</p> <p>Ce module implémente aussi la partie serveur du <a href="https://www.haproxy.org/download/3.1/doc/proxy-protocol.txt">protocole PROXY</a> de HAProxy via la directive <code class="directive"><a href="#remoteipproxyprotocol">RemoteIPProxyProtocol</a></code>.</p> <p>Une fois sa valeur modifiée comme indiqué, cette adresse IP client est utilisée pour la fonctionnalité <code class="directive"><a href="../mod/mod_authz_core.html#require">Require ip</a></code> de <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code> ; elle est aussi affichée par <code class="module"><a href="../mod/mod_status.html">mod_status</a></code>, et enregistrée via les chaînes de formatage <code>%a</code> des modules <code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code> et <code class="module"><a href="../mod/core.html">core</a></code>. L'adresse IP client sous-jacente de la connexion est enregistrée via la chaîne de formatage <code>%{c}a</code> et via la variable <code>CONN_REMOTE_ADDR</code> dans les <a href="../expr.html">expressions</a>.</p> <div class="warning">Il est essentiel de n'activer cette fonctionnalité que pour les requêtes en provenance des serveurs intermédiaires (mandataires, etc...) auxquels le serveur peut faire confiance, car il est trivial pour le client distant d'usurper l'identité d'un autre client.</div> </div> <div id="quickview"><h3>Sujets</h3> <ul id="topics"> <li><img alt="" src="../../images/down.gif"> <a href="#processing">Traitement des adresses distantes</a></li> </ul><h3 class="directives">Directives</h3> <ul id="toc"> <li><img alt="" src="../../images/down.gif"> <a href="#remoteipheader">RemoteIPHeader</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#remoteipinternalproxylist">RemoteIPInternalProxyList</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#remoteipproxiesheader">RemoteIPProxiesHeader</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#remoteipproxyprotocol">RemoteIPProxyProtocol</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#remoteipproxyprotocolexceptions">RemoteIPProxyProtocolExceptions</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#remoteiptrustedproxylist">RemoteIPTrustedProxyList</a></li> </ul> <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&list_id=144532&product=Apache%20httpd-2&query_format=specific&order=changeddate%20DESC%2Cpriority%2Cbug_severity&component=mod_remoteip">Problèmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_remoteip">Signaler un bug</a></li></ul><h3>Voir aussi</h3> <ul class="seealso"> <li><code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code></li> <li><code class="module"><a href="../mod/mod_status.html">mod_status</a></code></li> <li><code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code></li> <li><a href="https://www.haproxy.org/download/3.1/doc/proxy-protocol.txt">Proxy Protocol Spec</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="processing">Traitement des adresses distantes <a title="Lien permanent" href="#processing" class="permalink">¶</a></h2> <p>Par défaut, Apache identifie le client via la valeur client_ip de la connexion, et de cette valeur découlent les valeurs remote_host et remote_logname de la connexion. Ces champs jouent un rôle dans l'authentification, l'autorisation et la journalisation, ainsi que dans d'autres traitements effectués par d'autres modules chargeables.</p> <p>mod_remoteip remplace l'adresse IP client de la connexion par l'adresse IP client indiquée par exemple par un mandataire ou un répartiteur de charge pour toute la durée de la requête. Un répartiteur de charge pourra ainsi établir une connexion keepalive de longue durée avec le serveur, chaque requête conservant alors l'adresse IP client correcte bien que l'adresse IP client sous-jacente du répartiteur de charge reste inchangée.</p> <p>Lorsque la valeur de l'en-tête comporte plusieurs adresses IP client séparées par des virgules, celles-ci sont traitées de la droite vers la gauche. Le traitement s'arrête lorsque l'adresse IP client courante n'est pas digne de confiance pour présenter l'adresse IP précédente. Le champ d'en-tête est alors mis à jour de façon à ne contenir que cette liste d'adresses non confirmées, ou bien, si toutes les adresses IP sont dignes de confiance, cet en-tête est tout bonnement supprimé de la requête.</p> <p>Lors du remplacement de l'adresse IP client, le module stocke la liste des hôtes intermédiaires dans un mémo remoteip-proxy-ip-list, que l'on peut faire enregistrer par <code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code> en utilisant le symbole de format <code>%{remoteip-proxy-ip-list}n</code>. Si l'administrateur doit stocker ceci dans un en-tête additionnel, la même valeur peut aussi être enregistrée sous la forme d'un en-tête en utilisant la directive <code class="directive"><a href="#remoteipproxiesheader">RemoteIPProxiesHeader</a></code>.</p> <div class="note"><h3>Adresses IPv4 converties au format IPv6</h3> Avec httpd, d'une manière générale, toute adresse IPv4 convertie au format IPv6 est enregistrée sous sa forme IPv4.</div> <div class="note"><h3>Adresses internes (privées)</h3> Tous les blocs d'adresses internes 10/8, 172.16/12, 192.168/16, 169.254/16 and 127/8 (ainsi que les adresses IPv6 en dehors du bloc public 2000::/3 block) ne sont évaluées par mod_remoteip que lorsque des mandataires internes (intranet) <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code> sont enregistrés.</div> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="remoteipheader">Directive <span id="RemoteIPHeader">RemoteIPHeader</span> <a title="Lien permanent" href="#remoteipheader" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le champ d'en-tête qui contiendra les adresses IP du client</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPHeader <var>en-tête</var></code></td></tr> <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>none</code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr> </table> <p>La directive <code class="directive">RemoteIPHeader</code> indique à <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code> de traiter la valeur de l'<var>en-tête</var> spécifié comme l'adresse IP du client, ou comme une liste d'adresses IP clients intermédiaires, en fonction de la configuration des directives <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code> et <code class="directive"><a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></code>. Si ces deux dernières directives ne sont pas utilisées, <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code> traitera tout hôte présentant une adresse non interne dans l'en-tête <code class="directive">RemoteIPHeader</code> comme hôte de confiance.</p> <div class="warning">Si ces deux dernières directives ne sont pas utilisées, <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code> traitera tout hôte présentant une adresse non interne dans l'en-tête <code class="directive">RemoteIPHeader</code> comme hôte de confiance.</div> <div class="example"><h3>Exemple à usage interne (répartiteur de charge)</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Client-IP</pre> </div> <div class="example"><h3>Exemple dans le cas d'un mandataire</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Forwarded-For</pre> </div> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="remoteipinternalproxy">Directive <span id="RemoteIPInternalProxy">RemoteIPInternalProxy</span> <a title="Lien permanent" href="#remoteipinternalproxy" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Déclare les adresses IP intranet clients comme dignes de confiance pour présenter la valeur RemoteIPHeader</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPInternalProxy <var>ip-mandataire</var>|<var>ip-mandataire/sous-réseau</var>|<var>nom-hôte</var> ...</code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr> </table> <p>La directive <code class="directive">RemoteIPInternalProxy</code> permet d'ajouter une ou plusieurs adresses (ou blocs d'adresses) auxquelles on peut faire confiance pour présenter une valeur RemoteIPHeader valide de l'adresse IP du client. A la différence de la directive <code class="directive"><a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></code>, toute adresse IP présentée dans cet en-tête, y comprises les adresses intranet privées, sont considérées comme dignes de confiance lorsqu'elles sont indiquées par ces mandataires.</p> <div class="example"><h3>Exemple à usage interne (répartiteur de charge)</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Client-IP RemoteIPInternalProxy 10.0.2.0/24 RemoteIPInternalProxy gateway.localdomain</pre> </div> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="remoteipinternalproxylist">Directive <span id="RemoteIPInternalProxyList">RemoteIPInternalProxyList</span> <a title="Lien permanent" href="#remoteipinternalproxylist" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Déclare les adresses IP intranet clients comme dignes de confiance pour présenter la valeur RemoteIPHeader</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPInternalProxyList <var>nom-fichier</var></code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr> </table> <p>La directive <code class="directive">RemoteIPInternalProxyList</code> permet de spécifier un fichier parcouru au démarrage du serveur pour construire une liste d'adresses (ou blocs d'adresses), auxquelles on peut faire confiance pour présenter une valeur RemoteIPHeader valide de l'adresse IP du client.</p> <p>Le caractère '<code>#</code>' indique une ligne de commentaires, sinon, toutes les lignes séparées par un caractère <code>nouvelle ligne</code> ou tous les éléments d'une ligne séparés par un espace sont traités de la même façon qu'avec la directive <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code>.</p> <div class="example"><h3>Exemple à usage interne (répartiteur de charge)</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Client-IP RemoteIPInternalProxyList conf/trusted-proxies.lst</pre> </div> <div class="example"><h3>contenu de conf/mandataires-de-confiance.lst</h3><pre> # Nos mandataires internes de confiance 10.0.2.0/24 # Tout le monde dans le groupe de test passerelle.domaine-local # Le frontal répartiteur de charge</pre></div> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="remoteipproxiesheader">Directive <span id="RemoteIPProxiesHeader">RemoteIPProxiesHeader</span> <a title="Lien permanent" href="#remoteipproxiesheader" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Déclare le champ d'en-tête qui contiendra toutes les adresses IP intermédiaires</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPProxiesHeader <var>Nom_en-tête</var></code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr> </table> <p>La directive <code class="directive">RemoteIPProxiesHeader</code> permet de spécifier l'en-tête dans lequel <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code> va collecter une liste de toutes les adresses IP clients intermédiaires auxquelles on pourra faire confiance pour résoudre l'adresse IP client de la requête. Notez que les adresses intermédiaires <code class="directive"><a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></code> sont enregistrées dans cet en-tête, alors que toute adresse intermédiaire <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code> est omise.</p> <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Forwarded-For RemoteIPProxiesHeader X-Forwarded-By</pre> </div> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="remoteipproxyprotocol">Directive <span id="RemoteIPProxyProtocol">RemoteIPProxyProtocol</span> <a title="Lien permanent" href="#remoteipproxyprotocol" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active ou désactive la gestion du protocole PROXY</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPProxyProtocol On|Off</code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr> <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible à partir de la version 2.4.31 du serveur HTTP Apache</td></tr> </table> <p>La directive <code class="directive">RemoteIPProxyProtocol</code> permet d'activer ou de désactiver la prise en compte et la gestion de l'en-tête de connexion du protocole PROXY. Si elle est définie à <code>On</code>, la demande du client <em>doit</em> envoyer l'en-tête approprié pour chaque nouvelle connexion, sinon cette dernière sera fermée à moins qu'il ne fasse partie de la liste, définie via la directive <code class="directive"><a href="#remoteipproxyprotocoldisablehosts">RemoteIPProxyProtocolDisableHosts</a></code>, des hôtes pour lesquels le protocole PROXY est désactivé.</p> <p>Bien que cette directive peut être définie au niveau de n'importe quel serveur virtuel, il est important de garder à l'esprit que, étant donné que le protocole PROXY est basé sur la connexion et agnostique quant au protocle, son activation/désactivation est basée sur le couple adresse IP/port. Cela signifie que si plusieurs serveurs virtuels à base de nom sont configurés avec le même couple adresse IP/port, et si vous activez le protocole PROXY pour l'un d'entre eux, il le sera aussi pour tous les autres (avec le même couple adresse IP/port). Cela signifie aussi que si vous tentez d'activer le protocole PROXY pour un serveur virtuel et de le désactiver pour un autre, cela ne marchera pas ; dans ce dernier cas, la dernière directive l'emporte sur les autres et une notification sera enregistrée dans le journal pour indiquer les réglages qui ont été annulés.</p> <pre class="prettyprint lang-config">Listen 80 <VirtualHost *:80> ServerName www.example.com RemoteIPProxyProtocol On #Les requêtes pour ce serveur virtuel doivent contenir un en-tête du #protocole PROXY. Si ce n'est pas le cas, la connexion sera fermée. </VirtualHost> Listen 8080 <VirtualHost *:8080> ServerName www.example.com RemoteIPProxyProtocol On RemoteIPProxyProtocolExceptions 127.0.0.1 10.0.0.0/8 #Les requêtes pour ce serveur virtuel doivent contenir un en-tête du #protocole PROXY. Si ce n'est pas le cas, la connexion sera fermée à moins que sa source ne soit localhost ou la gamme d'adresses RFC1918 10.x.x.x </VirtualHost></pre> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="remoteipproxyprotocolexceptions">Directive <span id="RemoteIPProxyProtocolExceptions">RemoteIPProxyProtocolExceptions</span> <a title="Lien permanent" href="#remoteipproxyprotocolexceptions" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Désactive la prise en compte de l'en-tête PROXY pour certains hôtes ou réseaux</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPProxyProtocolExceptions host|range [host|range] [host|range]</code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr> <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>RemoteIPProxyProtocolExceptions est disponible à partir de la version 2.4.31 du serveur HTTP Apache</td></tr> </table> <p>La directive <code class="directive">RemoteIPProxyProtocol</code> permet de contrôler la prise en compte de l'en-tête de connexion du protocole PROXY. Il est parfois souhaitable d'exiger pour certains clients la présence de l'en-tête PROXY, mais aussi de permettre aux autres clients de se connecter sans ce dernier. Cette directive permet à l'administrateur du serveur d'autoriser cette possibilité à un hôte isolé ou à une gamme d'hôtes au format CIDR.</p> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="remoteiptrustedproxy">Directive <span id="RemoteIPTrustedProxy">RemoteIPTrustedProxy</span> <a title="Lien permanent" href="#remoteiptrustedproxy" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Déclare les adresses IP clientes de l'intranet dignes de confiance pour présenter la valeur RemoteIPHeader</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPTrustedProxy <var>ip-mandataire</var>|<var>ip-mandataire/sous-réseau</var>|<var>nom-hôte</var> ...</code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr> </table> <p>La directive <code class="directive">RemoteIPTrustedProxy</code> permet d'ajouter une ou plusieurs adresses, ou blocs d'adresses, auxquelles on peut faire confiance pour présenter une valeur RemoteIPHeader valide de l'adresse IP du client. A la différence de la directive <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code>, toutes les adresses IP intranet ou privées indiquées par de tels mandataires, y compris les blocs d'adresses 10/8, 172.16/12, 192.168/16, 169.254/16 et 127/8 (ou située en dehors du bloc IPv6 public 2000::/3), ne sont pas dignes de confiance en tant qu'adresses IP distantes, et se situent à gauche dans le contenu de l'en-tête <code class="directive"><a href="#remoteipheader">RemoteIPHeader</a></code>.</p> <div class="example"><h3>Exemple d'adresse de confiance (répartiteur de charge</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Forwarded-For RemoteIPTrustedProxy 10.0.2.16/28 RemoteIPTrustedProxy proxy.example.com</pre> </div> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="remoteiptrustedproxylist">Directive <span id="RemoteIPTrustedProxyList">RemoteIPTrustedProxyList</span> <a title="Lien permanent" href="#remoteiptrustedproxylist" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Déclare les adresses IP intranet clients comme dignes de confiance pour présenter la valeur RemoteIPHeader</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPTrustedProxyList <var>nom-fichier</var></code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr> </table> <p>La directive <code class="directive">RemoteIPTrustedProxyList</code> permet de spécifier un fichier parcouru au démarrage du serveur pour construire une liste d'adresses (ou blocs d'adresses), auxquelles on peut faire confiance pour présenter une valeur RemoteIPHeader valide de l'adresse IP du client.</p> <p>Le caractère '<code>#</code>' indique une ligne de commentaires, sinon, toutes les lignes séparées par un caractère nouvelle ligne ou tous les éléments d'une ligne séparés par un espace sont traités de la même façon qu'avec la directive <code class="directive"><a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></code>.</p> <div class="example"><h3>Exemple d'adresse de confiance (répartiteur de charge</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Forwarded-For RemoteIPTrustedProxyList conf/trusted-proxies.lst</pre> </div> <div class="example"><h3>conf/mandataires-de-confiance.lst contents</h3><p><code> # Mandataires externes identifiés<br> 192.0.2.16/28 #groupe wap phone de mandataires<br> proxy.isp.example.com #un FAI bien connu </code></p></div> </div> </div> <div class="bottomlang"> <p><span>Langues Disponibles: </span><a href="../../en/mod/mod_remoteip.html" hreflang="en" rel="alternate" title="English"> en </a> | <a href="../../fr/mod/mod_remoteip.html" title="Français"> fr </a></p> </div><div id="footer"> <p class="apache">Copyright 2026 The Apache Software Foundation.<br>Autorisé sous <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> <p class="menu"><a href="../mod/index.html">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 = '☰'; 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>