
lgentis at apache
May 17, 2012, 8:13 AM
Post #1 of 1
(42 views)
Permalink
|
|
svn commit: r1339634 - in /httpd/httpd/branches/2.4.x/docs/manual: ./ misc/ rewrite/ ssl/
|
|
Author: lgentis Date: Thu May 17 15:13:36 2012 New Revision: 1339634 URL: http://svn.apache.org/viewvc?rev=1339634&view=rev Log: Updates. Modified: httpd/httpd/branches/2.4.x/docs/manual/content-negotiation.xml.fr httpd/httpd/branches/2.4.x/docs/manual/misc/perf-tuning.xml.fr httpd/httpd/branches/2.4.x/docs/manual/misc/security_tips.xml.fr httpd/httpd/branches/2.4.x/docs/manual/rewrite/access.xml.fr httpd/httpd/branches/2.4.x/docs/manual/rewrite/advanced.xml.fr httpd/httpd/branches/2.4.x/docs/manual/rewrite/avoid.xml.fr httpd/httpd/branches/2.4.x/docs/manual/rewrite/flags.xml.fr httpd/httpd/branches/2.4.x/docs/manual/rewrite/intro.xml.fr httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_faq.xml.fr httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_howto.xml.fr httpd/httpd/branches/2.4.x/docs/manual/suexec.xml.fr httpd/httpd/branches/2.4.x/docs/manual/upgrading.xml.fr httpd/httpd/branches/2.4.x/docs/manual/urlmapping.xml.fr Modified: httpd/httpd/branches/2.4.x/docs/manual/content-negotiation.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/content-negotiation.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/content-negotiation.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/content-negotiation.xml.fr Thu May 17 15:13:36 2012 @@ -3,7 +3,7 @@ <?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> -<!-- English Revision: 1174747:1334033 (outdated) --> +<!-- English Revision : 1334033 --> <!-- Licensed to the Apache Software Foundation (ASF) under one or more @@ -130,7 +130,7 @@ gestionnaire qui associe un suffixe de fichier à une <code>type-map</code>; ce qui se fait simplement en ajoutant</p> -<example>AddHandler type-map .var</example> +<highlight language="config">AddHandler type-map .var</highlight> <p>dans le fichier de configuration du serveur.</p> @@ -239,7 +239,7 @@ nommé par la directive <directive module="mod_dir">DirectoryIndex</directive>, si le serveur tente d'indexer un répertoire. Si les fichiers de configuration spécifient</p> -<example>DirectoryIndex index</example> +<highlight language="config">DirectoryIndex index</highlight> <p>le serveur va choisir entre <code>index.html</code> et <code>index.html3</code> si les deux fichiers sont présents. Si aucun n'est présent, mais <code>index.cgi</code> existe, @@ -537,8 +537,10 @@ langage</title> variante, le processus normal de négociation sera lancé.</p> <example><title>Exemple</title> - SetEnvIf Cookie "language=(.+)" prefer-language=$1<br /> - Header append Vary cookie + <highlight language="config"> +SetEnvIf Cookie "language=(.+)" prefer-language=$1 +Header append Vary cookie + </highlight> </example> </section> </section> Modified: httpd/httpd/branches/2.4.x/docs/manual/misc/perf-tuning.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/misc/perf-tuning.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/misc/perf-tuning.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/misc/perf-tuning.xml.fr Thu May 17 15:13:36 2012 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1328334:1333991 (outdated) --> +<!-- English Revision : 1333991 --> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> @@ -164,14 +164,12 @@ Voici un exemple qui désactive les recherches DNS sauf pour les fichiers <code>.html</code> et <code>.cgi</code> :</p> - <example> - HostnameLookups off<br /> - <Files ~ "\.(html|cgi)$"><br /> - <indent> - HostnameLookups on<br /> - </indent> - </Files> - </example> + <highlight language="config"> +HostnameLookups off +<Files ~ "\.(html|cgi)$"> + HostnameLookups on +</Files> + </highlight> <p>Mais même dans ce cas, si vous n'avez besoin de noms DNS que dans certains CGIs, vous pouvez effectuer l'appel à <code>gethostbyname</code> @@ -190,14 +188,12 @@ symboliques. Un appel supplémentaire par élément du chemin du fichier. Par exemple, si vous avez :</p> - <example> - DocumentRoot /www/htdocs<br /> - <Directory /><br /> - <indent> - Options SymLinksIfOwnerMatch<br /> - </indent> - </Directory> - </example> + <highlight language="config"> +DocumentRoot /www/htdocs +<Directory /> + Options SymLinksIfOwnerMatch +</Directory> + </highlight> <p>et si une requête demande l'URI <code>/index.html</code>, Apache effectuera un appel à <code>lstat(2)</code> pour @@ -208,20 +204,16 @@ vérifier la sécurité des liens symboliques, vous pouvez utiliser une configuration du style :</p> - <example> - DocumentRoot /www/htdocs<br /> - <Directory /><br /> - <indent> - Options FollowSymLinks<br /> - </indent> - </Directory><br /> - <br /> - <Directory /www/htdocs><br /> - <indent> - Options -FollowSymLinks +SymLinksIfOwnerMatch<br /> - </indent> - </Directory> - </example> + <highlight language="config"> +DocumentRoot /www/htdocs +<Directory /> + Options FollowSymLinks +</Directory> + +<Directory /www/htdocs> + Options -FollowSymLinks +SymLinksIfOwnerMatch +</Directory> + </highlight> <p>Ceci évite au moins les vérifications supplémentaires pour le chemin défini par <directive module="core">DocumentRoot</directive>. Notez que @@ -246,14 +238,12 @@ pour chaque élément du chemin du fichier demandé. Par exemple, si vous avez : </p> - <example> - DocumentRoot /www/htdocs<br /> - <Directory /><br /> - <indent> - AllowOverride all<br /> - </indent> - </Directory> - </example> + <highlight language="config"> +DocumentRoot /www/htdocs +<Directory /> + AllowOverride all +</Directory> + </highlight> <p>et qu'une requête demande l'URI <code>/index.html</code>, Apache tentera d'ouvrir <code>/.htaccess</code>, <code>/www/.htaccess</code>, @@ -275,15 +265,11 @@ Il y a cependant un cas dans lequel vous pouvez accélérer le serveur. Au lieu d'utiliser une directive générique comme :</p> - <example> - DirectoryIndex index - </example> + <highlight language="config">DirectoryIndex index</highlight> <p>utilisez une liste explicite d'options :</p> - <example> - DirectoryIndex index.cgi index.pl index.shtml index.html - </example> + <highlight language="config">DirectoryIndex index.cgi index.pl index.shtml index.html</highlight> <p>où vous placez le choix courant en première position.</p> @@ -477,6 +463,12 @@ serveurs présentant un traffic important car il possède une empreinte mémoire plus petite que le MPM prefork.</li> + <li>Comme le MPM Worker, le MPM <module>event</module> utilise + les threads, mais il a été conçu pour traiter davantage de + requêtes simultanément en confiant une partie du travail à des + threads de support, ce qui permet aux threads principaux de + traiter de nouvelles requêtes.</li> + <li>Le MPM <module>prefork</module> utilise plusieurs processus enfants possédant chacun un seul thread. Chaque processus gère une seule connexion à la fois. Sur de nombreux systèmes, prefork est comparable @@ -628,39 +620,29 @@ (ces exemples ne sont pas extraits du code d'Apache, ils ne sont proposés qu'à des fins pédagogiques) :</p> - <example> - for (;;) {<br /> - <indent> - for (;;) {<br /> - <indent> - fd_set accept_fds;<br /> - <br /> - FD_ZERO (&accept_fds);<br /> - for (i = first_socket; i <= last_socket; ++i) {<br /> - <indent> - FD_SET (i, &accept_fds);<br /> - </indent> - }<br /> - rc = select (last_socket+1, &accept_fds, NULL, NULL, NULL);<br /> - if (rc < 1) continue;<br /> - new_connection = -1;<br /> - for (i = first_socket; i <= last_socket; ++i) {<br /> - <indent> - if (FD_ISSET (i, &accept_fds)) {<br /> - <indent> - new_connection = accept (i, NULL, NULL);<br /> - if (new_connection != -1) break;<br /> - </indent> - }<br /> - </indent> - }<br /> - if (new_connection != -1) break;<br /> - </indent> - }<br /> - process the new_connection;<br /> - </indent> + <highlight language="c"> + for (;;) { + for (;;) { + fd_set accept_fds; + + FD_ZERO (&accept_fds); + for (i = first_socket; i <= last_socket; ++i) { + FD_SET (i, &accept_fds); + } + rc = select (last_socket+1, &accept_fds, NULL, NULL, NULL); + if (rc < 1) continue; + new_connection = -1; + for (i = first_socket; i <= last_socket; ++i) { + if (FD_ISSET (i, &accept_fds)) { + new_connection = accept (i, NULL, NULL); + if (new_connection != -1) break; + } + } + if (new_connection != -1) break; + } + process_the(new_connection); } - </example> + </highlight> <p>Mais cette implémentation rudimentaire présente une sérieuse lacune. Rappelez-vous que les processus enfants exécutent cette boucle au même @@ -699,41 +681,31 @@ entrées dans la boucle interne. La boucle ressemble à ceci (les différences sont mises en surbrillance) :</p> - <example> - for (;;) {<br /> - <indent> - <strong>accept_mutex_on ();</strong><br /> - for (;;) {<br /> - <indent> - fd_set accept_fds;<br /> - <br /> - FD_ZERO (&accept_fds);<br /> - for (i = first_socket; i <= last_socket; ++i) {<br /> - <indent> - FD_SET (i, &accept_fds);<br /> - </indent> - }<br /> - rc = select (last_socket+1, &accept_fds, NULL, NULL, NULL);<br /> - if (rc < 1) continue;<br /> - new_connection = -1;<br /> - for (i = first_socket; i <= last_socket; ++i) {<br /> - <indent> - if (FD_ISSET (i, &accept_fds)) {<br /> - <indent> - new_connection = accept (i, NULL, NULL);<br /> - if (new_connection != -1) break;<br /> - </indent> - }<br /> - </indent> - }<br /> - if (new_connection != -1) break;<br /> - </indent> - }<br /> - <strong>accept_mutex_off ();</strong><br /> - process the new_connection;<br /> - </indent> + <highlight language="c"> + for (;;) { + <strong>accept_mutex_on ();</strong> + for (;;) { + fd_set accept_fds; + + FD_ZERO (&accept_fds); + for (i = first_socket; i <= last_socket; ++i) { + FD_SET (i, &accept_fds); + } + rc = select (last_socket+1, &accept_fds, NULL, NULL, NULL); + if (rc < 1) continue; + new_connection = -1; + for (i = first_socket; i <= last_socket; ++i) { + if (FD_ISSET (i, &accept_fds)) { + new_connection = accept (i, NULL, NULL); + if (new_connection != -1) break; + } + } + if (new_connection != -1) break; + } + <strong>accept_mutex_off ();</strong> + process the new_connection; } - </example> + </highlight> <p><a id="serialize" name="serialize">Les fonctions</a> <code>accept_mutex_on</code> et <code>accept_mutex_off</code> @@ -846,39 +818,31 @@ <code>http_main.c</code>). La fonction ressemble approximativement à ceci :</p> - <example> - void lingering_close (int s)<br /> - {<br /> - <indent> - char junk_buffer[2048];<br /> - <br /> - /* shutdown the sending side */<br /> - shutdown (s, 1);<br /> - <br /> - signal (SIGALRM, lingering_death);<br /> - alarm (30);<br /> - <br /> - for (;;) {<br /> - <indent> - select (s for reading, 2 second timeout);<br /> - if (error) break;<br /> - if (s is ready for reading) {<br /> - <indent> - if (read (s, junk_buffer, sizeof (junk_buffer)) <= 0) {<br /> - <indent> - break;<br /> - </indent> - }<br /> - /* just toss away whatever is here */<br /> - </indent> - }<br /> - </indent> - }<br /> - <br /> - close (s);<br /> - </indent> + <highlight language="c"> + void lingering_close (int s) + { + char junk_buffer[2048]; + + /* shutdown the sending side */ + shutdown (s, 1); + + signal (SIGALRM, lingering_death); + alarm (30); + + for (;;) { + select (s for reading, 2 second timeout); + if (error) break; + if (s is ready for reading) { + if (read (s, junk_buffer, sizeof (junk_buffer)) <= 0) { + break; + } + /* just toss away whatever is here */ + } + } + + close (s); } - </example> + </highlight> <p>Ceci ajoute naturellement un peu de charge à la fin d'une connexion, mais s'avère nécessaire pour une implémentation fiable. Comme HTTP/1.1 Modified: httpd/httpd/branches/2.4.x/docs/manual/misc/security_tips.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/misc/security_tips.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/misc/security_tips.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/misc/security_tips.xml.fr Thu May 17 15:13:36 2012 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1300924:1333991 (outdated) --> +<!-- English revision : 1333991 --> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> @@ -336,11 +336,11 @@ <p>Ajoutez dans le fichier de configuration du serveur</p> - <example> - <Directory /> <br /> - AllowOverride None <br /> - </Directory> - </example> + <highlight language="config"> +<Directory /> + AllowOverride None +</Directory> + </highlight> <p>Ceci interdit l'utilisation des fichiers <code>.htaccess</code> dans tous les répertoires, sauf ceux pour lesquels c'est explicitement @@ -369,28 +369,28 @@ fichiers. Pour l'éviter, ajoutez le bloc suivant à la configuration de votre serveur :</p> - <example> - <Directory /> <br /> - Order Deny,Allow <br /> - Deny from all <br /> - </Directory> - </example> + <highlight language="config"> +<Directory /> + Order Deny,Allow + Deny from all +</Directory> + </highlight> <p>ceci va interdire l'accès par défaut à tous les fichiers du système de fichiers. Vous devrez ensuite ajouter les blocs <directive module="core">Directory</directive> appropriés correspondant aux répertoires auxquels vous voulez autorisez l'accès. Par exemple,</p> - <example> - <Directory /usr/users/*/public_html> <br /> - Order Deny,Allow <br /> - Allow from all <br /> - </Directory> <br /> - <Directory /usr/local/httpd> <br /> - Order Deny,Allow <br /> - Allow from all <br /> - </Directory> - </example> + <highlight language="config"> +<Directory /usr/users/*/public_html> + Order Deny,Allow + Allow from all +</Directory> +<Directory /usr/local/httpd> + Order Deny,Allow + Allow from all +</Directory> + </highlight> <p>Portez une attention particulière aux interactions entre les directives <directive module="core">Location</directive> et @@ -405,9 +405,7 @@ fortement d'inclure la ligne suivante dans le fichier de configuration de votre serveur :</p> - <example> - UserDir disabled root - </example> + <highlight language="config">UserDir disabled root</highlight> </section> @@ -453,12 +451,12 @@ qui signifie que vous avez probablement mis en commentaire ce qui suit dans le fichier de configuration de votre serveur :</p> - <example> - <Files ".ht*"> <br /> - Order allow,deny <br /> - Deny from all <br /> - </Files> - </example> + <highlight language="config"> +<Files ".ht*"> + Order allow,deny + Deny from all +</Files> + </highlight> </section> <section id="merging"> Modified: httpd/httpd/branches/2.4.x/docs/manual/rewrite/access.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/rewrite/access.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/rewrite/access.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/rewrite/access.xml.fr Thu May 17 15:13:36 2012 @@ -1,10 +1,11 @@ <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1174747:1335963 (outdated) --> +<!-- English Revision: 1335963 --> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> + <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with @@ -87,30 +88,30 @@ correspondance</a></seealso> <!-- TODO: Add discussion here of why we have !^$ in there. --> -<example> -RewriteCond %{HTTP_REFERER} <strong>!^$</strong><br /> -RewriteCond %{HTTP_REFERER} !www.example.com [NC]<br /> -RewriteRule <strong>\.(gif|jpg|png)$</strong> - [F,NC] -</example> +<highlight language="config"> +RewriteCond %{HTTP_REFERER} !^$ +RewriteCond %{HTTP_REFERER} !www.example.com [NC] +RewriteRule \.(gif|jpg|png)$ - [F,NC] +</highlight> <p>Dans le second exemple, plutôt que de rejeter la requête, nous affichons une autre image à la place.</p> -<example> -RewriteCond %{HTTP_REFERER} <strong>!^$</strong><br /> -RewriteCond %{HTTP_REFERER} !www.example.com [NC]<br /> -RewriteRule <strong>\.(gif|jpg|png)$</strong> /images/go-away.png [R,NC] -</example> +<highlight language="config"> +RewriteCond %{HTTP_REFERER} !^$ +RewriteCond %{HTTP_REFERER} !www.example.com [NC] +RewriteRule \.(gif|jpg|png)$ /images/go-away.png [R,NC] +</highlight> <p>Dans le troisième exemple, nous redirigeons la requête vers une image appartenant à un autre site.</p> +<highlight language="config"> +RewriteCond %{HTTP_REFERER} !^$ +RewriteCond %{HTTP_REFERER} !www.example.com [NC] +RewriteRule \.(gif|jpg|png)$ http://other.example.com/image.gif [R,NC] +</highlight> -<example> -RewriteCond %{HTTP_REFERER} <strong>!^$</strong><br /> -RewriteCond %{HTTP_REFERER} !www.example.com [NC]<br /> -RewriteRule <strong>\.(gif|jpg|png)$</strong> http://other.example.com/image.gif [R,NC] -</example> <p>De tous ces exemples, les deux derniers semblent les plus efficaces pour faire en sorte que les gens arrêtent de référencer vos images à chaud, car il ne verront pas les images @@ -125,14 +126,12 @@ RewriteRule <strong>\.(gif|jpg|png)$</st simplement interdire l'accès à la ressource, vous pouvez y parvenir sans utiliser mod_rewrite :</p> - <example> - SetEnvIf Referer exemple\.com localreferer<br /> - <FilesMatch \.(jpg|png|gif)$><br /> - Order deny,allow<br /> - Deny from all<br /> - Allow from env=localreferer<br /> - </FilesMatch> - </example> + <highlight language="config"> +SetEnvIf Referer example\.com localreferer +<FilesMatch \.(jpg|png|gif)$> + Require env localreferer +</FilesMatch> + </highlight> </dd> </dl> @@ -161,8 +160,7 @@ RewriteRule <strong>\.(gif|jpg|png)$</st <p>Notez qu'il existe des méthodes d'exclusion qui n'utilisent pas mod_rewrite. Notez aussi que toute technique qui repose sur le contenu de la chaîne client <code>USER_AGENT</code> peut être - contournée très facilement car cette chaîne de caractères peut - être modifiée.</p> + contournée très facilement car cette chaîne peut être modifiée.</p> </dd> <dt>Solution :</dt> @@ -170,7 +168,7 @@ RewriteRule <strong>\.(gif|jpg|png)$</st <dd> <p>On utilise un jeu de règles qui spécifie le répertoire à protéger, ainsi que la chaîne client <code>USER_AGENT</code> qui - identifie le robot indésirable ou envahissant.</p> + identifie le robot malin ou envahissant.</p> <p>Dans cet exemple, nous bloquons un robot nommé <code>Vilain_Robot</code> pour le répertoire @@ -178,11 +176,11 @@ RewriteRule <strong>\.(gif|jpg|png)$</st seulement depuis une source particulière, vous pouvez aussi spécifier un intervalle d'adresses IP.</p> -<example> -RewriteCond %{HTTP_USER_AGENT} ^<strong>Vilain_Robot</strong><br /> -RewriteCond %{REMOTE_ADDR} =<strong>123\.45\.67\.[8-9]</strong><br /> -RewriteRule ^<strong>/secret/fichiers/</strong> - [<strong>F</strong>] -</example> +<highlight language="config"> +RewriteCond %{HTTP_USER_AGENT} ^NameOfBadRobot +RewriteCond %{REMOTE_ADDR} =123\.45\.67\.[8-9] +RewriteRule ^/secret/files/ - [F] +</highlight> </dd> <dt>Discussion :</dt> @@ -192,14 +190,15 @@ RewriteRule ^<strong>/secret/fichiers/</ Vous pouvez cependant parvenir au même résultat sans utiliser mod_rewrite via la méthode alternative suivante : </p> - <example> - SetEnvIfNoCase User-Agent ^Vilain_Robot interdit<br /> - <Location /secret/fichiers><br /> - Order allow,deny<br /> - Allow from all<br /> - Deny from env=interdit<br /> - </Location> - </example> + <highlight language="config"> +SetEnvIfNoCase User-Agent ^NameOfBadRobot goaway +<Location /secret/files> + <RequireAll> + Require all granted + Require not env goaway + </RequireAll> +</Location> + </highlight> <p> Comme indiqué plus haut, il est aisé de contourner cette technique, simplement en modifiant le contenu de l'en-tête @@ -230,13 +229,13 @@ RewriteRule ^<strong>/secret/fichiers/</ <dt>Solution :</dt> <dd> -<example> -RewriteEngine on<br /> -RewriteMap hosts-deny txt:/chemin/vers/hosts.deny<br /> -RewriteCond ${hosts-deny:%{REMOTE_ADDR}|NOT-FOUND} !=NOT-FOUND [OR]<br /> -RewriteCond ${hosts-deny:%{REMOTE_HOST}|NOT-FOUND} !=NOT-FOUND<br /> +<highlight language="config"> +RewriteEngine on +RewriteMap hosts-deny txt:/path/to/hosts.deny +RewriteCond ${hosts-deny:%{REMOTE_ADDR}|NOT-FOUND} !=NOT-FOUND [OR] +RewriteCond ${hosts-deny:%{REMOTE_HOST}|NOT-FOUND} !=NOT-FOUND RewriteRule ^ - [F] -</example> +</highlight> <example> ##<br /> @@ -286,24 +285,24 @@ bsdti1.sdm.de -<br /> <p>Le jeu de règles suivant utilise un fichier de correspondances pour associer chaque Referer à une cible de redirection.</p> -<example> -RewriteMap deflector txt:/chemin/vers/deflector.map<br /> -<br /> -RewriteCond %{HTTP_REFERER} !=""<br /> -RewriteCond ${deflector:%{HTTP_REFERER}} =-<br /> -RewriteRule ^ %{HTTP_REFERER} [R,L]<br /> -<br /> -RewriteCond %{HTTP_REFERER} !=""<br /> -RewriteCond ${deflector:%{HTTP_REFERER}|NOT-FOUND} !=NOT-FOUND<br /> +<highlight language="config"> +RewriteMap deflector txt:/path/to/deflector.map + +RewriteCond %{HTTP_REFERER} !="" +RewriteCond ${deflector:%{HTTP_REFERER}} =- +RewriteRule ^ %{HTTP_REFERER} [R,L] + +RewriteCond %{HTTP_REFERER} !="" +RewriteCond ${deflector:%{HTTP_REFERER}|NOT-FOUND} !=NOT-FOUND RewriteRule ^ ${deflector:%{HTTP_REFERER}} [R,L] -</example> +</highlight> <p>Le fichier de correspondances contient les cibles de redirection associées à chaque Referer, ou, si nous voulons simplement rediriger les requêtes vers leur Referer, un "-" est inscrit dans le fichier de correspondances :</p> -<example> +<highlight language="config"> ##<br /> ## deflector.map<br /> ##<br /> @@ -311,7 +310,7 @@ RewriteRule ^ ${deflector:%{HTTP_REFERER http://www.mauvais-gars.example.com/mauvais/index.html -<br /> http://www.mauvais-gars.example.com/mauvais/index2.html -<br /> http://www.mauvais-gars.example.com/mauvais/index3.html http://quelque-part.example.com/ -</example> +</highlight> </dd> </dl> Modified: httpd/httpd/branches/2.4.x/docs/manual/rewrite/advanced.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/rewrite/advanced.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/rewrite/advanced.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/rewrite/advanced.xml.fr Thu May 17 15:13:36 2012 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1174747:1338147 (outdated) --> +<!-- English Revision: 1338147 --> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> @@ -25,7 +25,7 @@ <manualpage metafile="avoid.xml.meta"> <parentdocument href="./">Rewrite</parentdocument> -<title>Techniques avancées de réécriture avec mod_rewrite</title> +<title>Advanced Techniques with mod_rewrite</title> <summary> @@ -102,14 +102,11 @@ http://serveur_physique_utilisateur1/u/u serveur par défaut qui sera utilisé lorsqu'un utilisateur ne possèdera pas d'entrée dans la table de correspondances :</p> -<example> -RewriteEngine on<br /> -<br /> -RewriteMap utilisateurs-serveurs -txt:/chemin/vers/correspondances-utilisateurs-serveurs<br /> -<br /> -RewriteRule ^/u/<strong>([^/]+)</strong>/?(.*) http://<strong>${utilisateurs-serveurs:$1|server0}</strong>/u/$1/$2 -</example> +<highlight language="config"> +RewriteEngine on +RewriteMap users-to-hosts txt:/path/to/map.users-to-hosts +RewriteRule ^/u/([^/]+)/?(.*) http://${users-to-hosts:$1|server0}/u/$1/$2 +</highlight> </dd> </dl> @@ -138,13 +135,13 @@ RewriteRule ^/u/<strong>([^/]+)</stron <dt>Solution :</dt> <dd> - À cet effet, on utilise le jeu de règles suivant : + A cet effet, on utilise le jeu de règles suivant : -<example> -# Cet exemple n'est valable que dans un contexte de répertoire<br /> -RewriteCond %{REQUEST_URI} <strong>!-U</strong><br /> +<highlight language="config"> +# Cet exemple n'est valable que dans un contexte de répertoire +RewriteCond %{REQUEST_URI} !-U RewriteRule ^(.+)\.html$ /regenerate_page.cgi [PT,L] -</example> +</highlight> <p>L'opérateur <code>-U</code> permet de déterminer si la chaîne de test (dans ce cas <code>REQUEST_URI</code>) est une URL valide. @@ -185,12 +182,11 @@ RewriteRule ^(.+)\.html$ /regen module="mod_rewrite">RewriteMap</directive> et une liste de serveurs.</p> -<example> -RewriteEngine on<br /> -RewriteMap lb rnd:/chemin/vers/liste-serveurs.txt<br /> -<br /> +<highlight language="config"> +RewriteEngine on +RewriteMap lb rnd:/path/to/serverlist.txt RewriteRule ^/(.*) http://${lb:serveurs}/$1 [P,L] -</example> +</highlight> <p><code>liste-serveurs.txt</code> contiendra la liste des serveurs :</p> @@ -248,9 +244,9 @@ plus de fonctionnalités dans ce d actualisée chaque fois que la ressource est mise à jour dans le système de fichiers.</p> -<example> +<highlight language="config"> RewriteRule ^(/[uge]/[^/]+/?.*):refresh /interne/cgi/apache/nph-refresh?f=$ -</example> +</highlight> <p>Nous appelons maintenant cette URL</p> @@ -268,7 +264,7 @@ RewriteRule ^(/[uge]/[^/]+/?.*):refres écrive habituellement dans ces cas "laissé à la charge du lecteur à titre d'exercice", ;-) je vous l'offre, aussi.</p> -<example><pre> +<highlight language="perl"> #!/sw/bin/perl ## ## nph-refresh -- script NPH/CGI pour l'actualisation automatique de @@ -278,61 +274,61 @@ RewriteRule ^(/[uge]/[^/]+/?.*):refres $| = 1; # éclate la variable QUERY_STRING - [at] pair = split(/&/, $ENV{'QUERY_STRING'}); +@pairs = split( /&/, $ENV{'QUERY_STRING'} ); foreach $pair (@pairs) { -($name, $value) = split(/=/, $pair); -$name =~ tr/A-Z/a-z/; -$name = 'QS_' . $name; -$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; -eval "\$$name = \"$value\""; -} -$QS_s = 1 if ($QS_s eq ''); -$QS_n = 3600 if ($QS_n eq ''); -if ($QS_f eq '') { -print "HTTP/1.0 200 OK\n"; -print "Content-type: text/html\n\n"; -print "&lt;b&gt;ERREUR&lt;/b&gt;: Aucun fichier fourni\n"; -exit(0); -} -if (! -f $QS_f) { -print "HTTP/1.0 200 OK\n"; -print "Content-type: text/html\n\n"; -print "&lt;b&gt;ERREUR&lt;/b&gt;: Fichier $QS_f non trouvé\n"; -exit(0); + ( $name, $value ) = split( /=/, $pair ); + $name =~ tr/A-Z/a-z/; + $name = 'QS_' . $name; + $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; + eval "\$$name = \"$value\""; +} +$QS_s = 1 if ( $QS_s eq '' ); +$QS_n = 3600 if ( $QS_n eq '' ); +if ( $QS_f eq '' ) { + print "HTTP/1.0 200 OK\n"; + print "Content-type: text/html\n\n"; + print "<b>ERROR</b>: No file given\n"; + exit(0); +} +if ( !-f $QS_f ) { + print "HTTP/1.0 200 OK\n"; + print "Content-type: text/html\n\n"; + print "<b>ERROR</b>: File $QS_f not found\n"; + exit(0); } sub print_http_headers_multipart_begin { -print "HTTP/1.0 200 OK\n"; -$bound = "ThisRandomString12345"; -print "Content-type: multipart/x-mixed-replace;boundary=$bound\n"; -&print_http_headers_multipart_next; + print "HTTP/1.0 200 OK\n"; + $bound = "ThisRandomString12345"; + print "Content-type: multipart/x-mixed-replace;boundary=$bound\n"; + &print_http_headers_multipart_next; } sub print_http_headers_multipart_next { -print "\n--$bound\n"; + print "\n--$bound\n"; } sub print_http_headers_multipart_end { -print "\n--$bound--\n"; + print "\n--$bound--\n"; } sub displayhtml { -local($buffer) = @_; -$len = length($buffer); -print "Content-type: text/html\n"; -print "Content-length: $len\n\n"; -print $buffer; + local ($buffer) = @_; + $len = length($buffer); + print "Content-type: text/html\n"; + print "Content-length: $len\n\n"; + print $buffer; } sub readfile { -local($file) = @_; -local(*FP, $size, $buffer, $bytes); -($x, $x, $x, $x, $x, $x, $x, $size) = stat($file); -$size = sprintf("%d", $size); -open(FP, "&lt;$file"); -$bytes = sysread(FP, $buffer, $size); -close(FP); -return $buffer; + local ($file) = @_; + local ( *FP, $size, $buffer, $bytes ); + ( $x, $x, $x, $x, $x, $x, $x, $size ) = stat($file); + $size = sprintf( "%d", $size ); + open( FP, "<$file" ); + $bytes = sysread( FP, $buffer, $size ); + close(FP); + return $buffer; } $buffer = &readfile($QS_f); @@ -340,30 +336,30 @@ $buffer = &readfile($QS_f); &displayhtml($buffer); sub mystat { -local($file) = $_[0]; -local($time); + local ($file) = $_[0]; + local ($time); -($x, $x, $x, $x, $x, $x, $x, $x, $x, $mtime) = stat($file); -return $mtime; + ( $x, $x, $x, $x, $x, $x, $x, $x, $x, $mtime ) = stat($file); + return $mtime; } $mtimeL = &mystat($QS_f); -$mtime = $mtime; -for ($n = 0; $n &lt; $QS_n; $n++) { -while (1) { - $mtime = &mystat($QS_f); - if ($mtime ne $mtimeL) { - $mtimeL = $mtime; - sleep(2); - $buffer = &readfile($QS_f); - &print_http_headers_multipart_next; - &displayhtml($buffer); - sleep(5); - $mtimeL = &mystat($QS_f); - last; +$mtime = $mtime; +for ( $n = 0 ; $n & lt ; $QS_n ; $n++ ) { + while (1) { + $mtime = &mystat($QS_f); + if ( $mtime ne $mtimeL ) { + $mtimeL = $mtime; + sleep(2); + $buffer = &readfile($QS_f); + &print_http_headers_multipart_next; + &displayhtml($buffer); + sleep(5); + $mtimeL = &mystat($QS_f); + last; + } + sleep($QS_s); } - sleep($QS_s); -} } &print_http_headers_multipart_end; @@ -371,7 +367,7 @@ while (1) { exit(0); ##EOF## -</pre></example> +</highlight> </dd> </dl> @@ -402,10 +398,10 @@ exit(0); <p>On utilise le jeu de règles suivant pour développer les URLs avec tilde selon l'organisation structurée précédente.</p> -<example> -RewriteEngine on<br /> +<highlight language="config"> +RewriteEngine on RewriteRule ^/~(<strong>([a-z])</strong>[a-z0-9]+)(.*) /home/<strong>$2</strong>/$1/public_html$3 -</example> +</highlight> </dd> </dl> @@ -464,13 +460,12 @@ RewriteRule ^/~(<strong>([a-z])</stron permettent d'effectuer des redirections dépendant de l'heure :</p> -<example> -RewriteEngine on<br /> -RewriteCond %{TIME_HOUR}%{TIME_MIN} >0700<br /> -RewriteCond %{TIME_HOUR}%{TIME_MIN} <1900<br /> -RewriteRule ^foo\.html$ foo.jour.html [L]<br /> -RewriteRule ^foo\.html$ foo.nuit.html -</example> +<highlight language="config"> ++RewriteEngine on ++RewriteCond %{TIME_HOUR}%{TIME_MIN} >0700 ++RewriteCond %{TIME_HOUR}%{TIME_MIN} <1900 ++RewriteRule ^foo\.html$ foo.day.html [L] +</highlight> <p>Avec cet exemple, l'URL <code>foo.html</code> renvoie le contenu de <code>foo.jour.html</code> durant le @@ -483,7 +478,8 @@ RewriteRule ^foo\.html$ fo la fenêtre de temps configurée. On peut utiliser <module>mod_expires</module> pour contourner ce problème. Il est cependant bien plus commode de servir un contenu dynamique, et - de le personnaliser en fonction de l'heure du jour.</note> </dd> + de le personnaliser en fonction de l'heure du jour.</note> + </dd> </dl> </section> @@ -511,18 +507,18 @@ RewriteRule ^foo\.html$ fo <p>Utiliser le drapeau [E] pour définir une variable d'environnement.</p> -<example> -RewriteEngine on<br /> +<highlight language="config"> +RewriteEngine on RewriteRule ^/cheval/(.*) /poney/$1 [E=<strong>rewritten:1</strong>] -</example> +</highlight> <p>Plus loin dans votre jeu de règles, vous pouvez vérifier le contenu de cette variable d'environnement via une directive RewriteCond :</p> -<example> +<highlight language="config"> RewriteCond %{ENV:rewritten} =1 -</example> +</highlight> </dd> </dl> Modified: httpd/httpd/branches/2.4.x/docs/manual/rewrite/avoid.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/rewrite/avoid.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/rewrite/avoid.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/rewrite/avoid.xml.fr Thu May 17 15:13:36 2012 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1328305:1333985 (outdated) --> +<!-- English Revision : 1333985 --> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> @@ -99,25 +99,22 @@ rediriger toutes les URLs de niveaux inf <p>Pour rediriger les URLs sous <code>/un</code> vers <code>http://un.example.com/</code>, utilisez cette définition :</p> -<example> -Redirect /un/ http://un.example.com/ -</example> +<highlight language="config">Redirect /one/ http://one.example.com/</highlight> <p>Pour rediriger les URLs <code>http</code> vers <code>https</code>, utilisez cette définition :</p> -<example> +<highlight language="config"> <VirtualHost *:80> -ServerName www.example.com<br /> -Redirect / https://www.example.com/<br /> +ServerName www.example.com +Redirect / https://www.example.com/ </VirtualHost > -<br /> + <VirtualHost *:443> -ServerName www.example.com<br /> -<br /> -# ... insérer ici la configuration SSL<br /> +ServerName www.example.com +# ... insérer ici la configuration SSL </VirtualHost > -</example> +</highlight> <p>L'utilisation de la directive <code>RewriteRule</code> pour accomplir cette tâche peut se justifier s'il existe d'autres directives @@ -144,7 +141,8 @@ possible d'effectuer cette mise en corre <code>Alias</code> pour des raisons de simplicité et de performances.</p> <example><title>Utilisation de la directive Alias</title> -Alias /chats /var/www/virtualhosts/felin/htdocs +<highlight language="config">Alias /cats +/var/www/virtualhosts/felines/htdocs</highlight> </example> <p> @@ -176,7 +174,7 @@ créer un grand nombre de serveurs <p>L'utilisation de <module>mod_rewrite</module> pour la création de serveurs virtuels peut se révéler appropriée si votre service d'hébergement ne vous permet pas d'accéder aux fichiers de configuration -du serveur, et que vous vous trouvez par conséquent obligé de passer par les +du serveur, et que vous soyez par conséquent obligé de passer par les fichiers <code>.htaccess</code>.</p> <p>Voir le document <a href="vhosts.html">création de serveurs virtuels @@ -191,9 +189,9 @@ cela semble être tout de mêm href="flags.html#flag_p">[P]</a> qui permet de faire passer les URIs réécrits par <module>mod_proxy</module>.</p> -<example> +<highlight language="config"> RewriteRule ^/?images(.*) http://serveur-images.local/images$1 [P] -</example> +</highlight> <p>Cependant, dans les nombreux cas où aucune correspondance au modèle n'est vraiment nécessaire, comme dans l'exemple ci-dessus, il est @@ -201,9 +199,9 @@ préférable d'utiliser la d module="mod_proxy">ProxyPass</directive>. L'exemple précédent pourrait être remplacé par :</p> -<example> +<highlight language="config"> ProxyPass /images/ http://serveur-images.local/images/ -</example> +</highlight> <p>Que vous utilisiez <directive module="mod_rewrite">RewriteRule</directive> ou <directive @@ -212,9 +210,9 @@ utiliser aussi la directive <directive module="mod_proxy">ProxyPassReverse</directive> pour intercepter les redirections en provenance du serveur d'arrière-plan :</p> -<example> +<highlight language="config"> ProxyPassReverse /images/ http://serveur-images.local/images/ -</example> +</highlight> <p>Vous devrez cependant tout de même utiliser <code>RewriteRule</code> lorsque d'autres <code>RewriteRule</code>s se trouvent dans la même portée, @@ -238,14 +236,14 @@ d'hôte canonique, tel que <code>ww directive <directive module="core" type="section">If</directive> comme suit :</p> -<example> -<If "$req{Host} != 'www.example.com'"><br /> -RedirectMatch (.*) http://www.example.com$1<br /> +<highlight language="config"> +<If "req('Host') != 'www.example.com'"> + Redirect / http://www.example.com </If> -</example> +</highlight> -<p>On peut utiliser cette technique dans de nombreux scénarios courants -en remplacement de <module>mod_rewrite</module> pour effectuer des actions +<p>On peut utiliser cette technique dans de nombreux scénarios courant +pour remplacer <module>mod_rewrite</module> pour effectuer des actions en fonction d'en-têtes de requêtes ou de réponses, ou de variables d'environnement.</p> Modified: httpd/httpd/branches/2.4.x/docs/manual/rewrite/flags.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/rewrite/flags.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/rewrite/flags.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/rewrite/flags.xml.fr Thu May 17 15:13:36 2012 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1311806:1333985 (outdated) --> +<!-- English Revision : 1333985 --> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> @@ -49,9 +49,7 @@ correspondance</a></seealso> module="mod_rewrite">RewriteRule</directive> peut être modifié par un ou plusieurs drapeaux. Les drapeaux sont situés en fin de règle, entourés de crochets, et séparés le cas échéant par des virgules.</p> -<example> -RewriteRule modèle cible [drapeau1,drapeau2,drapeau3] -</example> +<highlight language="config">RewriteRule pattern target [Flag1,Flag2,Flag3]</highlight> <p>Les drapeaux ont tous une forme courte, comme <code>CO</code>, ainsi qu'une forme longue, comme <code>cookie</code>. Certains drapeaux @@ -86,9 +84,7 @@ ces dernières sont appliqué non-alphanumériques des références arrières seront échappés. Considérons par exemple cette règle :</p> -<example> -RewriteRule ^search/(.*)$ /search.php?term=$1 -</example> +<highlight language="config">RewriteRule ^search/(.*)$ /search.php?term=$1</highlight> <p>Soit le terme de recherche 'x & y/z' ; un navigateur va le coder en 'x%20%26%20y%2Fz', transformant la requête en @@ -182,10 +178,10 @@ fonctionnalité.</dd> <p>Voici un exemple :</p> -<example> -RewriteEngine On<br /> +<highlight language="config"> +RewriteEngine On RewriteRule ^/index\.html - [CO=frontdoor:yes:.example.org:1440:/] -</example> +</highlight> <p>Dans l'exemple ci-dessus, la règle ne réécrit pas la requête. La cible de réécriture "-" @@ -302,9 +298,7 @@ Forbidden.</p> <p>La règle suivante va interdire la téléchargement de fichiers <code>.exe</code> depuis votre serveur.</p> -<example> -RewriteRule \.exe - [F] -</example> +<highlight language="config">RewriteRule \.exe - [F]</highlight> <p>Cet exemple utilise la syntaxe "-" pour la cible de réécriture, ce qui signifie que l'URI de la requête n'est pas modifié. Il n'y a aucune @@ -324,9 +318,7 @@ disponible auparavant ne l'est plus actu <p>Comme dans le cas du drapeau [F], on utilise en général la syntaxe "-" pour la cible de réécriture lorsqu'on utilise le drapeau [G] :</p> -<example> -RewriteRule ancienne-ressource - [G,NC] -</example> +<highlight language="config">RewriteRule oldproduct - [G,NC]</highlight> <p>Lorsqu'on utilise [G], [L] est implicite - c'est à dire que la réponse est renvoyée immédiatement, et aucune autre règle n'est évaluée.</p> @@ -339,9 +331,8 @@ spécifié. Par exemple, on l'interprétation de tous les fichiers sans extension par le gestionnaire php :</p> -<example> -RewriteRule !\. - [H=application/x-httpd-php] -</example> +<highlight language="config">RewriteRule !\. - +[H=application/x-httpd-php]</highlight> <p> L'expression rationnelle ci-dessus - <code>!\.</code> - correspond à @@ -354,9 +345,9 @@ faire en sorte que les fichiers <code>.p <em>affichés</em> par <code>mod_php</code> dans le cas où ils font l'objet d'une requête avec l'extension <code>.phps</code> :</p> -<example> +<highlight language="config"> RewriteRule ^(/source/.+\.php)s$ $1 [H=application/x-httpd-php-source] -</example> +</highlight> <p>L'expression rationnelle ci-dessus - @@ -415,11 +406,11 @@ module="mod_rewrite">RewriteCond</direct la requête concerne déjà <code>index.php</code>, la directive <directive module="mod_rewrite">RewriteRule</directive> sera sautée.</p> -<example> -RewriteBase /<br /> -RewriteCond %{REQUEST_URI} !=/index.php<br /> +<highlight language="config"> +RewriteBase / +RewriteCond %{REQUEST_URI} !=/index.php RewriteRule ^(.*) /index.php?req=$1 [L,PT] -</example> +</highlight> </section> <section id="flag_n"><title>N|next</title> @@ -436,9 +427,7 @@ suivant, chaque occurence de A sera remp ceci jusqu'il n'y ait plus de A à remplacer. </p> -<example> -RewriteRule (.*)A(.*) $1B$2 [N] -</example> +<highlight language="config">RewriteRule (.*)A(.*) $1B$2 [N]</highlight> <p>Vous pouvez vous représenter ce traitement comme une boucle <code>while</code> : tant que le modèle de la règle correspond (c'est à @@ -460,9 +449,7 @@ transmise par Apache à votre serv insensible à la casse, si bien que par exemple, <code>.jpg</code> aussi bien que <code>.JPG</code> seront acceptés.</p> -<example> -RewriteRule (.*\.(jpg|gif|png))$ http://images.example.com$1 [P,NC] -</example> +<highlight language="config">RewriteRule (.*\.(jpg|gif|png))$ http://images.example.com$1 [P,NC]</highlight> </section> <section id="flag_ne"><title>NE|noescape</title> @@ -471,9 +458,7 @@ RewriteRule (.*\.(jpg|gif|png))$ http:// hexadécimal. Le drapeau [NE] permet d'éviter cette conversion. </p> -<example> -RewriteRule ^/ancre/(.+) /grosse-page.html#$1 [NE,R] -</example> +<highlight language="config">RewriteRule ^/anchor/(.+) /bigpage.html#$1 [NE,R]</highlight> <p> Dans l'exemple ci-dessus, <code>/anchor/xyz</code> est réécrit en @@ -518,9 +503,7 @@ mandataire. Par exemple, si vous voulez soient traitées par un serveur d'images annexe, vous pouvez utiliser une règle de ce style :</p> -<example> -RewriteRule /(.*)\.(jpg|gif|png) http://images.example.com/$1.$2 [P] -</example> +<highlight language="config">RewriteRule /(.*)\.(jpg|gif|png)$ http://images.example.com/$1.$2 [P]</highlight> <p>L'utilisation du drapeau [P] provoque aussi l'effet du drapeau [L] - autrement dit, la requête est immédiatement envoyée au mandataire, et @@ -576,10 +559,10 @@ vous devez utiliser le drapeau [PT] pour module="mod_alias">Alias</directive> sera bien évalué. </p> -<example> -Alias /icons /usr/local/apache/icons<br /> -RewriteRule /pics/(.+)\.jpg /icons/$1.gif [PT] -</example> +<highlight language="config"> +Alias /icons /usr/local/apache/icons +RewriteRule /pics/(.+)\.jpg$ /icons/$1.gif [PT] +</highlight> <p> Dans l'exemple précédent, en l'absence du drapeau [PT], l'Alias aurait @@ -611,9 +594,8 @@ Avec le drapeau [QSA], les chaînes <p>Considérons la règle suivante :</p> -<example> -RewriteRule /pages/(.+) /page.php?page=$1 [QSA] -</example> +<highlight language="config">RewriteRule /pages/(.+) /page.php?page=$1 +[QSA]</highlight> <p>Avec le drapeau [QSA], une requête pour <code>/pages/123?one=two</code> sera réécrite en @@ -694,17 +676,18 @@ Ceci peut s'interpréter comme une l'exemple suivant, nous ne voulons exécuter la règle <directive module="mod_rewrite">RewriteRule</directive> que si l'URI demandé ne correspond pas à un fichier existant.</p> +<highlight language="config"> +# La requête concerne-t-elle un fichier qui n'existe pas ? +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d +# Si c'est la cas, on saute les deux règles de réécriture suivantes +RewriteRule .? - [S=2] -<example> -# La requête concerne-t-elle un fichier qui n'existe pas ?<br /> -RewriteCond %{REQUEST_FILENAME} !-f<br /> -RewriteCond %{REQUEST_FILENAME} !-d<br /> -# Si c'est la cas, on saute les deux règles de réécriture suivantes<br /> -RewriteRule .? - [S=2]<br /> -<br /> -RewriteRule (.*\.gif) images.php?$1<br /> +RewriteRule (.*\.gif) images.php?$1 RewriteRule (.*\.html) docs.php?$1 -</example> +</highlight> + + <p>Cette technique trouve son utilité dans le fait qu'une directive <directive module="mod_rewrite">RewriteCond</directive> ne s'applique @@ -715,27 +698,22 @@ conditions et ajouter une <code>RewriteR d'élaborer des pseudo-constructions if-then-else : la dernière règle du bloc then contiendra <code>skip=N</code>, où N est le nombre de règles contenues dans le bloc else :</p> -<example> -# Est-ce que le fichier existe ?<br /> -RewriteCond %{REQUEST_FILENAME} !-f<br /> -RewriteCond %{REQUEST_FILENAME} !-d<br /> -<!-- A traduire pour qui y comprend quelquechose --> -# Create an if-then-else construct by skipping 3 lines if we meant to go to the "else" stanza.<br /> -RewriteRule .? - [S=3]<br /> -<br /> +<highlight language="config"> +# Est-ce que le fichier existe ? +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d +# Create an if-then-else construct by skipping 3 lines if we meant to go to the "else" stanza. +RewriteRule .? - [S=3] + # Si le fichier existe, alors : -<indent> - RewriteRule (.*\.gif) images.php?$1<br /> - RewriteRule (.*\.html) docs.php?$1<br /> - # Skip past the "else" stanza.<br /> - RewriteRule .? - [S=1]<br /> -</indent> +RewriteRule (.*\.gif) images.php?$1 + RewriteRule (.*\.html) docs.php?$1 + # Skip past the "else" stanza. + RewriteRule .? - [S=1] # ELSE... -<indent> - RewriteRule (.*) 404.php?file=$1<br /> -</indent> +RewriteRule (.*) 404.php?file=$1 # END -</example> +</highlight> <p>Il est probablement plus aisé de définir ce genre de configuration via les directives <directive type="section">If</directive>, <directive @@ -753,19 +731,19 @@ module="mod_mime">AddType</directive>.</ du code source Perl en tant que plein texte, s'il est requis d'une certaine manière :</p> -<example> -# Sert les fichier .pl en tant que plein texte<br /> +<highlight language="config"> +# Sert les fichier .pl en tant que plein texte RewriteRule \.pl$ - [T=text/plain] -</example> +</highlight> <p>Ou encore, si vous possédez une caméra qui produit des fichiers images jpeg sans extension, vous pouvez forcer le renvoi de ces images avec le type MIME correct en se basant sur le nom du fichier :</p> -<example> -# Les fichiers dont le nom contient 'IMG' sont des images jpg.<br /> +<highlight language="config"> +# Les fichiers dont le nom contient 'IMG' sont des images jpg. RewriteRule IMG - [T=image/jpg] -</example> +</highlight> <p>Notez cependant qu'il s'agit d'un exemple trivial, et que le problème aurait pu être résolu en utilisant à la place la directive <directive Modified: httpd/httpd/branches/2.4.x/docs/manual/rewrite/intro.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/rewrite/intro.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/rewrite/intro.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/rewrite/intro.xml.fr Thu May 17 15:13:36 2012 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1325683:1333985 (outdated) --> +<!-- English Revision : 1333985 --> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> @@ -206,12 +206,17 @@ transformée;</li> <li><var>[drapeaux]</var>: options affectant la requête réécrite.</li> </ol> -<p>Le <var>Modèle</var> est toujours une <a href="#regex">expression -rationnelle</a> comparée au chemin de l'URL de la requête entrante (la +<p>Le <var>Modèle</var> est une <a href="#regex">expression +rationnelle</a>. Au sein de la première règle de réécriture, ou jusqu'à +ce qu'une substitution survienne, elle est comparée au chemin de +l'URL de la requête entrante (la partie située après le nom d'hôte mais avant tout point d'interrogation qui indique le début d'une chaîne de paramètres de requête) ou, dans un contexte de répertoire, au chemin de la -requête relativement au répertoire pour lequel la règle est définie..</p> +requête relativement au répertoire pour lequel la +règle est définie. Lorsqu'une substitution a eu lieu, les +règles suivantes effectuent leurs comparaisons par rapport à la valeur +substituée.</p> <p class="figure"> <img src="../images/syntax_rewriterule.png" @@ -225,9 +230,9 @@ trois types :</p> <dl> <dt>Un chemin complet du système de fichiers vers une ressource</dt> <dd> -<example> +<highlight language="config"> RewriteRule ^/jeux /usr/local/jeux/web -</example> +</highlight> <p>Ceci peut faire correspondre une requête à toute localisation voulue de votre système de fichiers, un peu comme la directive <directive module="mod_alias">Alias</directive>.</p> @@ -235,9 +240,9 @@ module="mod_alias">Alias</directive>.</p <dt>Un chemin web vers une ressource</dt> <dd> -<example> +<highlight language="config"> RewriteRule ^/foo$ /bar -</example> +</highlight> <p>Si la directive <directive module="core">DocumentRoot</directive> a pour valeur <code>/usr/local/apache2/htdocs</code>, cette règle va faire correspondre les requêtes pour <code>http://example.com/foo</code> au @@ -246,9 +251,9 @@ chemin <code>/usr/local/apache2/htdocs/b <dt>Une URL absolue</dt> <dd> -<example> +<highlight language="config"> RewriteRule ^/produits/vues$ http://site2.example.com/voirproduits.html [R] -</example> +</highlight> <p>Ceci informe le client qu'il doit effectuer une nouvelle requête vers l'URL spécifiée.</p> </dd> @@ -257,9 +262,9 @@ l'URL spécifiée.</p> <p>La chaîne de <var>Substitution</var> peut aussi contenir des <em>références arrières</em> vers des parties du chemin d'URL entrant correspondant au <var>Modèle</var>. Considérons ce qui suit :</p> -<example> +<highlight language="config"> RewriteRule ^/produits/(.*)/view$ /var/web/produitsdb/$1 -</example> +</highlight> <p>La variable <code>$1</code> sera remplacée par tout texte correspondant à l'expression située entre les parenthèses dans le <var>Modèle</var>. Par exemple, une requête pour @@ -280,9 +285,9 @@ présence d'un ou plusieurs drapea conditions de correspondance d'une règle peuvent être rendues insensibles à la casse par la présence du drapeau <code>[NC]</code> : </p> -<example> +<highlight language="config"> RewriteRule ^puppy.html petitchien.html [NC] -</example> +</highlight> <p>Pour une liste des drapeaux disponibles, leurs significations, et des exemples, voir le document <a href="flags.html">Drapeaux de @@ -312,10 +317,10 @@ correspondance est évaluée <p>Par exemple, pour renvoyer toutes les requêtes en provenance d'une certaine tranche d'adresses IP vers un autre serveur, vous pouvez utiliser :</p> -<example> -RewriteCond %{REMOTE_ADDR} ^10\.2\.<br /> +<highlight language="config"> +RewriteCond %{REMOTE_ADDR} ^10\.2\. RewriteRule (.*) http://intranet.example.com$1 -</example> +</highlight> <p>Si vous spécifiez plus d'une directive <directive module="mod_rewrite">RewriteCond</directive>, ces directives @@ -324,11 +329,11 @@ module="mod_rewrite">RewriteRule</direct pour interdire les requêtes qui contiennent le mot "hack" dans la chaîne de requête, sauf si elles contiennent aussi un cookie contenant le mot "go", vous pouvez utiliser :</p> -<example> -RewriteCond %{QUERY_STRING} hack<br /> -RewriteCond %{HTTP_COOKIE} !go<br /> +<highlight language="config"> +RewriteCond %{QUERY_STRING} hack +RewriteCond %{HTTP_COOKIE} !go RewriteRule . - [F] -</example> +</highlight> <p>Notez que le point d'exclamation indique une correspondance négative ; ainsi, la règle n'est appliquée que si le cookie ne contient pas "go"</p> @@ -339,10 +344,10 @@ de la règle <directive module="mo les variables <code>%1</code>, <code>%2</code>, etc... Par exemple, ce qui suit va diriger la requête vers un répertoire différent en fonction du nom d'hôte utilisé pour accéder au site :</p> -<example> -RewriteCond %{HTTP_HOST} (.*)<br /> +<highlight language="config"> +RewriteCond %{HTTP_HOST} (.*) RewriteRule ^/(.*) /sites/%1/$1 -</example> +</highlight> <p>Si la requête concernait <code>http://example.com/foo/bar</code>, alors <code>%1</code> contiendrait <code>example.com</code> et <code>$1</code> contiendrait <code>foo/bar</code>.</p> Modified: httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_faq.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_faq.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_faq.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_faq.xml.fr Thu May 17 15:13:36 2012 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1328589:1333999 (outdated) --> +<!-- English revision : 1333999 --> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> @@ -185,11 +185,11 @@ HTTPS dans les hyperliens relatifs ?</ti hyperliens pleinement qualifiés (car vous devez modifier le schéma de l'URL). Cependant, à l'aide du module <module>mod_rewrite</module>, vous pouvez manipuler des hyperliens relatifs, pour obtenir le même effet.</p> - <example> - RewriteEngine on<br /> - RewriteRule ^/(.*)_SSL$ https://%{SERVER_NAME}/$1 [R,L]<br /> - RewriteRule ^/(.*)_NOSSL$ http://%{SERVER_NAME}/$1 [R,L] - </example> + <highlight language="config"> +RewriteEngine on +RewriteRule ^/(.*)_SSL$ https://%{SERVER_NAME}/$1 [R,L] +RewriteRule ^/(.*)_NOSSL$ http://%{SERVER_NAME}/$1 [R,L] + </highlight> <p>Ce jeu de règles rewrite vous permet d'utiliser des hyperliens de la forme <code><a href="document.html_SSL"></code> pour passer en HTTPS @@ -269,10 +269,10 @@ fins de test ?</title> -keyout server.key</strong></code><br /> Ces fichiers seront utilisés comme suit dans votre <code>httpd.conf</code> : - <pre> - SSLCertificateFile /chemin/vers/server.crt - SSLCertificateKeyFile /chemin/vers/server.key - </pre> + <highlight language="config"> +SSLCertificateFile /path/to/this/server.crt +SSLCertificateKeyFile /path/to/this/server.key + </highlight> </li> <li>Il est important de savoir que le fichier <code>server.key</code> n'a <em>pas</em> de mot de passe. Pour ajouter un mot de passe à la clé, vous @@ -352,10 +352,10 @@ fins de test ?</title> <li>Vous devez maintenant disposer de deux fichiers : <code>server.key</code> et <code>server.crt</code>. Ils sont précisés dans votre fichier <code>httpd.conf</code> comme suit : - <pre> - SSLCertificateFile /chemin/vers/server.crt - SSLCertificateKeyFile /chemin vers/server.key - </pre> + <highlight language="config"> +SSLCertificateFile /path/to/this/server.crt +SSLCertificateKeyFile /path/to/this/server.key + </highlight> Le fichier <code>server.csr</code> n'est plus nécessaire. </li> @@ -705,9 +705,9 @@ pour différencier plusieurs h&oci (sur le port 443). Mais dans ce cas, vous devez définir le numéro de port non-SSL à l'aide de la directive NameVirtualHost dans ce style :</p> - <example> + <highlight language="config"> NameVirtualHost 192.168.1.1:80 - </example> + </highlight> <p>il existe d'autres solutions alternatives comme :</p> @@ -764,11 +764,11 @@ versions de MSIE. Vous pouvez contourner ou l'envoi de messages de notification de fermeture de session SSL aux clients MSIE. Pour cela, vous pouvez utiliser la directive suivante dans votre section d'hôte virtuel avec support SSL :</p> - <example> - SetEnvIf User-Agent "MSIE [2-5]" \<br /> - nokeepalive ssl-unclean-shutdown \<br /> - downgrade-1.0 force-response-1.0 - </example> + <highlight language="config"> +SetEnvIf User-Agent "MSIE [2-5]" \ + nokeepalive ssl-unclean-shutdown \ + downgrade-1.0 force-response-1.0 + </highlight> <p>En outre, certaines versions de MSIE ont des problèmes avec des algorithmes de chiffrement particuliers. Hélas, il n'est pas possible d'apporter une solution spécifique à MSIE pour ces Modified: httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_howto.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_howto.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_howto.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/ssl/ssl_howto.xml.fr Thu May 17 15:13:36 2012 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd"> <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?> -<!-- English Revision: 1328589:1333999 (outdated) --> +<!-- English Revision : 1333999 --> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> @@ -42,17 +42,15 @@ manière plus approfondie.</p> <p>Votre configuration SSL doit comporter au moins les directives suivantes :</p> -<example> - Listen 443 - <VirtualHost *:443><br /> - <indent> - ServerName www.example.com<br /> - SSLEngine on<br /> - SSLCertificateFile /chemin/vers/www.example.com.cert<br /> - SSLCertificateKeyFile /chemin/vers/www.example.com.key<br /> - </indent> - </VirtualHost> -</example> +<highlight language="config"> +Listen 443 +<VirtualHost *:443> + ServerName www.example.com + SSLEngine on + SSLCertificateFile /path/to/www.example.com.cert + SSLCertificateKeyFile /path/to/www.example.com.key +</VirtualHost> +</highlight> </section> @@ -73,9 +71,9 @@ accéder à une URL particul que le chiffrement fort ?</title> <p>Les directives suivantes ne permettent que les chiffrements de plus haut niveau :</p> - <example><title>httpd.conf</title> - SSLCipherSuite HIGH:!aNULL:!MD5<br /> - </example> + <highlight language="config"> + SSLCipherSuite HIGH:!aNULL:!MD5 + </highlight> </section> @@ -84,10 +82,10 @@ que le chiffrement fort ?</title> rapidité (le choix final sera opéré par mod_ssl, dans la mesure ou le client les supporte) :</p> - <example><title>httpd.conf</title> - SSLCipherSuite RC4-SHA:AES128-SHA:HIGH:!aNULL:!MD5<br /> - SSLHonorCipherOrder on - </example> + <highlight language="config"> +SSLCipherSuite RC4-SHA:AES128-SHA:HIGH:!aNULL:!MD5 +SSLHonorCipherOrder on + </highlight> </section> <section id="strongurl"> @@ -103,16 +101,16 @@ accéder à une URL particul <module>mod_ssl</module> peut alors forcer automatiquement une renégociation des paramètres SSL pour parvenir au but recherché. Cette configuration peut se présenter comme suit :</p> - <example> - # soyons très tolérant a priori<br /> - SSLCipherSuite ALL:!aNULL:RC4+RSA:+HIGH:+MEDIUM:+LOW:+EXP:+eNULL<br /> - <br /> - <Location /strong/area><br /> - # sauf pour https://hostname/strong/area/ et ses sous-répertoires<br /> - # qui exigent des chiffrements forts<br /> - SSLCipherSuite HIGH:!aNULL:!MD5<br /> - </Location> - </example> + <highlight language="config"> +# soyons très tolérant a priori +SSLCipherSuite ALL:!aNULL:RC4+RSA:+HIGH:+MEDIUM:+LOW:+EXP:+eNULL + +<Location /strong/area> +# sauf pour https://hostname/strong/area/ et ses sous-répertoires +# qui exigent des chiffrements forts +SSLCipherSuite HIGH:!aNULL:!MD5 +</Location> + </highlight> </section> <!-- /ciphersuites --> @@ -146,13 +144,13 @@ provenance de l'Internet ?</a></li> le certificat de votre propre autorité de certification (<code>ca.crt</code>), et d'authentifier les clients à l'aide de ces certificats.</p> - <example><title>httpd.conf</title> - # exige un certificat client signé par le certificat de votre CA<br /> - # contenu dans ca.crt<br /> - SSLVerifyClient require<br /> - SSLVerifyDepth 1<br /> - SSLCACertificateFile conf/ssl.crt/ca.crt - </example> + <highlight language="config"> +# exige un certificat client signé par le certificat de votre CA +# contenu dans ca.crt +SSLVerifyClient require +SSLVerifyDepth 1 +SSLCACertificateFile conf/ssl.crt/ca.crt + </highlight> </section> <section id="arbitraryclients"> @@ -165,15 +163,15 @@ mais autoriser quand-même tout cli URL particulière, vous pouvez utiliser les fonctionnalités de reconfiguration de <module>mod_ssl</module> en fonction du répertoire :</p> - <example><title>httpd.conf</title> - SSLVerifyClient none<br /> - SSLCACertificateFile conf/ssl.crt/ca.crt<br /> - <br /> - <Location /secure/area><br /> - SSLVerifyClient require<br /> - SSLVerifyDepth 1<br /> - </Location><br /> - </example> + <highlight language="config"> +SSLVerifyClient none +SSLCACertificateFile conf/ssl.crt/ca.crt + +<Location /secure/area> +SSLVerifyClient require +SSLVerifyDepth 1 +</Location> + </highlight> </section> <section id="certauthenticate"> @@ -195,23 +193,23 @@ l'accès au reste du serveur &agra de données de mots de passe contenant <em>tous</em> les clients autorisés, comme suit :</p> - <example><title>httpd.conf</title><pre> + <highlight language="config"> SSLVerifyClient none <Directory /usr/local/apache2/htdocs/secure/area> - SSLVerifyClient require -SSLVerifyDepth 5 -SSLCACertificateFile conf/ssl.crt/ca.crt -SSLCACertificatePath conf/ssl.crt -SSLOptions +FakeBasicAuth -SSLRequireSSL -AuthName "Snake Oil Authentication" -AuthType Basic -AuthBasicProvider file -AuthUserFile /usr/local/apache2/conf/httpd.passwd -Require valid-user -</Directory></pre> - </example> + SSLVerifyDepth 5 + SSLCACertificateFile conf/ssl.crt/ca.crt + SSLCACertificatePath conf/ssl.crt + SSLOptions +FakeBasicAuth + SSLRequireSSL + AuthName "Snake Oil Authentication" + AuthType Basic + AuthBasicProvider file + AuthUserFile /usr/local/apache2/conf/httpd.passwd + Require valid-user +</Directory> + </highlight> + <p>Le mot de passe utilisé dans cet exemple correspond à la chaîne de caractères "password" chiffrée en DES. Voir la documentation de la @@ -230,10 +228,9 @@ Require valid-user >SSLRequire</directive>, comme suit :</p> - <example><title>httpd.conf</title><pre> + <highlight language="config"> SSLVerifyClient none <Directory /usr/local/apache2/htdocs/secure/area> - SSLVerifyClient require SSLVerifyDepth 5 SSLCACertificateFile conf/ssl.crt/ca.crt @@ -242,8 +239,8 @@ SSLVerifyClient none SSLRequireSSL SSLRequire %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." \ and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} -</Directory></pre> - </example> +</Directory> + </highlight> </section> <section id="intranet"> @@ -260,52 +257,52 @@ aux clients de l'intranet.</title> doivent se trouver en dehors de votre hôte virtuel HTTPS, afin qu'elles s'appliquent à la fois à HTTP et HTTPS.</p> - <example><title>httpd.conf</title><pre> + <highlight language="config"> SSLCACertificateFile conf/ssl.crt/company-ca.crt <Directory /usr/local/apache2/htdocs> -# En dehors de subarea, seul l'accès depuis l'intranet est autorisé -Order deny,allow -Deny from all -Allow from 192.168.1.0/24 +# En dehors de subarea, seul l'accès depuis l'intranet est +# autorisé + Order deny,allow + Deny from all + Allow from 192.168.1.0/24 </Directory> <Directory /usr/local/apache2/htdocs/subarea> # Dans subarea, tout accès depuis l'intranet est autorisé -# mais depuis l'Internet, seul l'accès par HTTPS + chiffrement fort - + Mot de passe +# mais depuis l'Internet, seul l'accès par HTTPS + chiffrement fort + Mot de passe # ou HTTPS + chiffrement fort + certificat client n'est autorisé. # Si HTTPS est utilisé, on s'assure que le niveau de chiffrement est fort. # Autorise en plus les certificats clients comme une alternative à # l'authentification basique. -SSLVerifyClient optional -SSLVerifyDepth 1 -SSLOptions +FakeBasicAuth +StrictRequire -SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128 - -# ON oblige les clients venant d'Internet à utiliser HTTPS -RewriteEngine on -RewriteCond %{REMOTE_ADDR} !^192\.168\.1\.[0-9]+$ -RewriteCond %{HTTPS} !=on -RewriteRule . - [F] - -# On permet l'accès soit sur les critères réseaux, soit par authentification Basique -Satisfy any - -# Contrôle d'accès réseau -Order deny,allow -Deny from all -Allow 192.168.1.0/24 - -# Configuration de l'authentification HTTP Basique -AuthType basic -AuthName "Protected Intranet Area" -AuthBasicProvider file -AuthUserFile conf/protected.passwd -Require valid-user -</Directory></pre> - </example> + SSLVerifyClient optional + SSLVerifyDepth 1 + SSLOptions +FakeBasicAuth +StrictRequire + SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128 + + # ON oblige les clients venant d'Internet à utiliser HTTPS + RewriteEngine on + RewriteCond %{REMOTE_ADDR} !^192\.168\.1\.[0-9]+$ + RewriteCond %{HTTPS} !=on + RewriteRule . - [F] + + # On permet l'accès soit sur les critères réseaux, soit par authentification Basique + Satisfy any + + # Contrôle d'accès réseau + Order deny,allow + Deny from all + Allow 192.168.1.0/24 + + # Configuration de l'authentification HTTP Basique + AuthType basic + AuthName "Protected Intranet Area" + AuthBasicProvider file + AuthUserFile conf/protected.passwd + Require valid-user +</Directory> + </highlight> </section> </section> <!-- /access control --> Modified: httpd/httpd/branches/2.4.x/docs/manual/suexec.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/suexec.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/suexec.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/suexec.xml.fr Thu May 17 15:13:36 2012 @@ -3,7 +3,7 @@ <?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> -<!-- English Revision: 1038591:1334033 (outdated) --> +<!-- English Revision: 1334033 --> <!-- Licensed to the Apache Software Foundation (ASF) under one or more @@ -501,10 +501,10 @@ <p>Si, par exemple, votre serveur web est configuré pour s'exécuter en tant que :</p> -<example> - User www<br /> - Group webgroup<br /> -</example> +<highlight language="config"> +User www +Group webgroup + </highlight> <p>et <program>suexec</program> se trouve à "/usr/local/apache2/bin/suexec", vous devez exécuter les Modified: httpd/httpd/branches/2.4.x/docs/manual/upgrading.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/upgrading.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/upgrading.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/upgrading.xml.fr Thu May 17 15:13:36 2012 @@ -3,7 +3,7 @@ <?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> -<!-- English Revision: 1304987:1334033 (outdated) --> +<!-- English Revision : 1334033 --> <!-- Licensed to the Apache Software Foundation (ASF) under one or more @@ -91,14 +91,6 @@ fonctionnalités du serveur HTTP A <li>configure: le jeu de modules "reallyall" ajoute les modules de développeur au jeu "all".</li> - - <li>apr et apr-util: APR et APR-Util ne sont plus fournis dans le - paquet Apache httpd 2.4. Vous pouvez soit continuer à utiliser les - versions installées, soit continuer à utiliser l'option du script - configure <code>--with-included-apr</code> après avoir téléchargés - les paquets apr/apr-util (depuis <a - href="http://apr.apache.org/">Apache - APR</a>), et les avoir décompressés dans <code>./srclib/</code>.</li> </ul> </section> @@ -149,23 +141,31 @@ nécessiter une mise à jour <p>Dans cet exemple, toutes les requêtes sont rejetées :</p> <example> <title>version 2.2 :</title> - Order deny,allow<br /> - Deny from all + <highlight language="config"> +Order deny,allow +Deny from all + </highlight> </example> <example> <title>version 2.4 :</title> + <highlight language="config"> Require all denied + </highlight> </example> <p>Dans cet exemple, toutes les requêtes sont acceptées :</p> <example> <title>version 2.2 :</title> - Order allow,deny<br /> - Allow from all + <highlight language="config"> +Order allow,deny +Allow from all + </highlight> </example> <example> <title>version 2.4 :</title> + <highlight language="config"> Require all granted + </highlight> </example> <p>Dans l'exemple suivant, tous les hôtes du domaine example.org @@ -173,13 +173,17 @@ nécessiter une mise à jour <example> <title>version 2.2 :</title> - Order Deny,Allow<br /> - Deny from all<br /> - Allow from example.org + <highlight language="config"> +Order Deny,Allow +Deny from all +Allow from example.org + </highlight> </example> <example> <title>version 2.4 :</title> + <highlight language="config"> Require host example.org + </highlight> </example> </section> @@ -355,6 +359,12 @@ nécessiter une mise à jour <directive module="mod_include">SSILegacyExprParser</directive> a été activée pour le répertoire contenant les pages d'erreur. </li> + + <li>La fonctionnalité fournie par <code>mod_authn_alias</code> + dans les précédentes versions (en fait la directive + <directive module="mod_authn_core">AuthnProviderAlias</directive>) + est maintenant fournie par <module>mod_authn_core</module>. + </li> </ul> </section> Modified: httpd/httpd/branches/2.4.x/docs/manual/urlmapping.xml.fr URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/urlmapping.xml.fr?rev=1339634&r1=1339633&r2=1339634&view=diff ============================================================================== --- httpd/httpd/branches/2.4.x/docs/manual/urlmapping.xml.fr (original) +++ httpd/httpd/branches/2.4.x/docs/manual/urlmapping.xml.fr Thu May 17 15:13:36 2012 @@ -3,7 +3,7 @@ <?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?> <!-- French translation : Lucien GENTIS --> <!-- Reviewed by : Vincent Deffontaines --> -<!-- English Revision: 1310495:1334033 (outdated) --> +<!-- English Revision: 1334033 --> <!-- Licensed to the Apache Software Foundation (ASF) under one or more @@ -123,7 +123,7 @@ l'arborescence DocumentRoot</title> module="mod_alias">Alias</directive> pour rattacher toute portion du système de fichiers à l'arborescence du site web. Par exemple, avec</p> -<example>Alias /docs /var/web</example> +<highlight language="config">Alias /docs /var/web</highlight> <p>l'URL <code>http://www.example.com/docs/dir/file.html</code> correspondra au fichier <code>/var/web/dir/file.html</code>. La @@ -140,8 +140,9 @@ l'arborescence DocumentRoot</title> sur les <glossary ref="regex">expressions rationnelles</glossary>. Par exemple,</p> -<example>ScriptAliasMatch ^/~([a-zA-Z0-9]+)/cgi-bin/(.+) - /home/$1/cgi-bin/$2</example> +<highlight language="config"> + ScriptAliasMatch ^/~([a-zA-Z0-9]+)/cgi-bin/(.+) /home/$1/cgi-bin/$2 + </highlight> <p>fera correspondre une requête du style <code>http://example.com/~user/cgi-bin/script.cgi</code> au chemin @@ -189,8 +190,9 @@ l'arborescence DocumentRoot</title> <code>/home/user/public_html/file.html</code>, utilisez la directive <code>AliasMatch</code> suivante :</p> -<example>AliasMatch ^/upages/([a-zA-Z0-9]+)(/(.*))?$ - /home/$1/public_html/$3</example> +<highlight language="config"> + AliasMatch ^/upages/([a-zA-Z0-9]+)(/(.*))?$ /home/$1/public_html/$3 + </highlight> </section> <section id="redirect"><title>Redirection d'URL</title> @@ -209,7 +211,9 @@ l'arborescence DocumentRoot</title> nouveau répertoire <code>/bar/</code>, vous pouvez demander aux clients de le requérir à sa nouvelle localisation comme suit :</p> -<example>Redirect permanent /foo/ http://www.example.com/bar/</example> +<highlight language="config"> + Redirect permanent /foo/ http://www.example.com/bar/ + </highlight> <p>Ceci aura pour effet de rediriger tout chemin d'URL commençant par <code>/foo/</code> vers le même chemin d'URL sur le serveur @@ -224,14 +228,16 @@ l'arborescence DocumentRoot</title> laisser toutes les autres requêtes inchangées, utilisez la configuration suivante :</p> -<example>RedirectMatch permanent ^/$ - http://www.example.com/startpage.html</example> +<highlight language="config"> + RedirectMatch permanent ^/$ http://www.example.com/startpage.html + </highlight> <p>De même, pour rediriger temporairement toutes les pages d'un site vers une page particulière d'un autre site, utilisez ce qui suit :</p> -<example>RedirectMatch temp .* - http://othersite.example.com/startpage.html</example> +<highlight language="config"> + RedirectMatch temp .* http://othersite.example.com/startpage.html + </highlight> </section> <section id="proxy"><title>Mandataire inverse (Reverse Proxy)</title> @@ -250,12 +256,12 @@ dans le répertoire <code>/bar/</code> sur <code>internal.example.com</code> et les renvoie au client comme s'ils appartenaient au serveur local.</p> -<example> +<highlight language="config"> ProxyPass /foo/ http://internal.example.com/bar/<br /> ProxyPassReverse /foo/ http://internal.example.com/bar/<br /> ProxyPassReverseCookieDomain internal.example.com public.example.com<br /> ProxyPassReverseCookiePath /foo/ /bar/ -</example> +</highlight> <p>La directive <directive module="mod_proxy">ProxyPass</directive> configure le serveur pour rapatrier les documents appropriés, alors que la directive @@ -274,9 +280,9 @@ du serveur mandataire et effectuer sa re d'utres contenus) situés dans la page au moment où elle est envoyée au client en utilisant le module <module>mod_substitute</module>.</p> -<example> +<highlight language="config"> Substitute s/internal\.example\.com/www.example.com/i -</example> +</highlight> <p>Le module <module>mod_proxy_html</module> rend possible une réécriture plus élaborée des liens en HTML et XHTML. Il permet de créer des listes
|