From: Tony Stevenson Date: Sun, 28 Oct 2007 22:19:21 +0000 (+0000) Subject: As per recent email to docs@ (28th Oct) original translations by Lucient and reviewed... X-Git-Tag: 2.2.7~281 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=527eff0b83f1eb21aa1e2372f0ec8791d42cc799;p=thirdparty%2Fapache%2Fhttpd.git As per recent email to docs@ (28th Oct) original translations by Lucient and reviewed then by Vincent. One typo fixed in caching.xml.fr that was caught during the build process. Cheers, Tony Submitted by: Lucien Gentis and Vincent Deffontaines git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@589431 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/docs/manual/bind.html.fr b/docs/manual/bind.html.fr index 19b442c78f4..7da78e82786 100644 --- a/docs/manual/bind.html.fr +++ b/docs/manual/bind.html.fr @@ -5,7 +5,7 @@ This file is generated from xml source: DO NOT EDIT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --> -Liaison - Serveur Apache HTTP +Adresse IP et port d'écoute - Serveur Apache HTTP @@ -16,181 +16,151 @@
<-

Adresse IP et port d'écoute

Langues Disponibles:  de  |  en  |  fr  | - ja  | - ko 

+ ja  | + ko 

-
Cette traduction peut être périmée. Verifiez la version - Anglaise pour les changements récents.
- -

Configuration des adresses et ports sur lesquels Apache écoute.

-
- + +

Configuration d'Apache pour l'écoute sur un port et une adresse IP spécifiques.

+
+
top
-

Informations générales

- - - - - -

Au moment de son démarrage, Apache se lie à un port et à une - adresse IP sur la machine locale et se met en attente de requètes. - Par défaut, Apache écoute sur toutes les adresses de la machine. - Apache accepte d'écouter sur un ou plusieurs ports spécifiques, - sur une seule ou plusieurs adresses, ou encore sur une combinaison port-adresse. - Il est fréquent d'utiliser ces possibilités avec les fonctionnalités - de Serveurs Virtuels, qui permettent de faire répondre le serveur de - manière différente en fonction de l'adresse IP, du nom d'hôte ou - du port.

- -

Le serveur interprète la directive - Listen - en acceptant les requètes seulement sur le port ou la combinaison - adresse IP + port passée en argument. Dans le cas où seul un port - est spécifié avec la directive - Listen, - le serveur se met à l'écoute sur le port spécifié, sur toutes - les interfaces et adresses de la machine. Si une adresse IP est - spécifiée en plus du port, le serveur n'écoute que sur l'adresse - et le port spécifié. Il est possible de configurer plusieurs adresses - et ports avec la directives - Listen - pour écoute par le serveur. Le serveur répond aux requètes faites - à toutes les adresses et ports énumérés.

- - -

Par exemple, pour que le serveur accepte les connexions sur - les ports 80 et 8000, spécifiez :

- -

- Listen 80
- Listen 8000 -

- -

Pour qu'Apache accepte les connexions sur deux combinaisons - adresses + ports, spécifiez :

- -

- Listen 192.170.2.1:80
- Listen 192.170.2.5:8000 -

- -

Les adresses IPv6 sont acceptées, pourvu qu'elles soient spécifiées - entre crochets de la façon suivante :

- -

- Listen [2001:db8::a00:20ff:fea7:ccea]:80 -

-
top
+

Vue d'ensemble

+ + + + + +

Au démarrage d'Apache, un port et une adresse lui sont associés sur + l'hôte local et le serveur se met en attente de l'arrivée d'une requête. + Par défaut, le serveur écoute toutes les adresses de l'hôte local. + Cependant, il faut lui préciser des ports spécifiques à écouter, + ou lui dire de n'écouter que certaines adresses, + ou une combinaison des deux. + Tout ceci est souvent associé avec la fonctionnalité des hôtes virtuels + qui détermine la manière dont Apache répond aux différents ports, + noms d'hôtes et adresses IP.

+ +

La directive Listen + enjoint le serveur de n'accepter des requêtes que sur le port spécifié ou + une combinaison adresse/port. Si seul un numéro de port est spécifié + dans la directive Listen, + le serveur écoute ce port sur toutes les interfaces réseau. + Si une adresse IP est spécifiée en plus du port, le serveur va écouter + ce port sur l'interface réseau correspondante. On peut utiliser + de multiples directives + Listen pour + spécifier plusieurs adresses et ports à écouter. Le serveur répondra alors + aux requêtes sur ces ports et adresses spécifiés.

+ +

Par exemple, pour faire en sorte que le serveur accepte des connexions + sur les ports 80 et 8000, utilisez :

+ +

+ Listen 80
+ Listen 8000 +

+ +

Pour faire en sorte que le serveur accepte des connexions en provenance + de deux couples d'interfaces et ports, utilisez :

+ +

+ Listen 192.170.2.1:80
+ Listen 192.170.2.5:8000 +

+ +

Les adresses IPv6 doivent être entre crochets, comme dans + l'exemple suivant :

+ +

+ Listen [2001:db8::a00:20ff:fea7:ccea]:80 +

+
top
-

Considérations Spéciales avec IPv6

- - -

De plus en plus de plate-formes implémentent IPv6. APR - supporte IPv6 sur la plupart d'entre elles, si bien qu'Apache - peut assigner des interfaces de connexions IPv6 et répondre aux - requètes utilisant IPv6.

- -

Une complication possible pour les administrateurs Apache est de - savoir si une interface de connexion IPv6 peut répondre aux deux types de - connexions IPv4 et IPv6. - Manipuler les connexions IPv4 avec une interface de connexion IPv6 - suppose l'utilisation d'adresses IPv6 mappées en IPv4, ce qui est - le cas par defaut sur la plupart des plate-formes, à l'exeption de FreeBSD, - NetBSD, et OpenBSD, cela en raison des politiques systèmes de ces plate-formes. - Mème sur des systèmes où cette fonctionnalité n'est pas activée par - défaut, une option de compilation permet de changer ce - fonctionnement pour Apache.

-

Pour qu'Apache puisse gérer à la fois les connexions IPv4 et IPv6 - avec un minimum d'interfaces de connexions, il faut permettre l'utilisation - des adresses - IPv6 mappées en IPv4, ce qui est possible en spécifiant l'option - - de compilation --enable-v4-mapped et en utilisant la - directive Listen - comme suit:

+

Remarques spécifiques à IPv6

-

- Listen 80 -

- -

Si --enable-v4-mapped a été spécifié à la compilation, - les directives Listen - de la configuration par défaut sont de la forme ci-dessus. - --enable-v4-mapped est l'option de compilation - par défaut sur toutes les plate-formes, sauf FreeBSD, NetBSD, et - OpenBSD.

- - -

Pour qu'Apache ne manipule que les connexions IPv4, en ignorant l'éventuel - support IPv6 de la plate-forme ou d'APR, une adresse IPv4 peut être - spécifié pour toutes les directives - Listen, - comme dans les exemples suivantss:

- -

- Listen 0.0.0.0:80
- Listen 192.170.2.1:80 -

- -

Pour qu'Apache manipule les connexions IPv4 et IPv6 sur des interfaces - différentes (c'est-à-dire, pour ne pas accepter les addresse IPv6 mappées - en IPv4), spécifier l'option de compilation --disable-v4-mapped - et utiliser des directives Listen - spécifiques telles que:

-

- Listen [::]:80
- Listen 0.0.0.0:80 -

- -

Avec --disable-v4-mapped, la directive - Listen à l'intérieur - du fichier de configuration par défaut créé par Apache utilise la forme - ci-dessus. - --disable-v4-mapped est l'option de compilation par défaut sous - FreeBSD, NetBSD, et OpenBSD.

-
top
+ +

Un nombre croissant de plateformes implémentent IPv6, et + APR supporte IPv6 sur la plupart d'entre elles, + ce qui permet à Apache d'allouer des points de connexion (sockets) IPv6 + et de traiter des requêtes qui ont été envoyées sur IPv6.

+ +

Les administrateurs d'Apache doivent se préoccuper de la possibilité + pour un point de connexion IPv6 de traiter à la fois des connexions IPv4 + et des connexions IPv6. + Le traitement de connexions IPv4 avec un point de connexion IPv6 utilise + des adresses IPv6 traduites en IPv4, qui sont autorisées par défaut sur la + plupart des plateformes mais sont interdites par défaut sous FreeBSD, NetBSD, + et OpenBSD afin de respecter la politique de sécurité du système sur ces plateformes. + Mais même sur ces systèmes où ces adresses sont interdites par défaut, un + paramètre spécial du script configure permet de modifier + ce comportement pour Apache.

+ +

En revanche, sur certaines plateformes comme Linux et Tru64, la + seule manière de gérer à la fois IPv6 et IPv4 passe + par l'utilisation d'adresses traduites. Si vous voulez qu'Apache gère + des connexions IPv4 et IPv6 avec un minimum de points de connexion, + ce qui nécessite l'utilisation d'adresses IPv6 traduites en IPv4, + utilisez l'option --enable-v4-mapped du script configure.

+ +

L'option --enable-v4-mapped est utilisée par défaut sur + toutes les plateformes sauf FreeBSD, NetBSD, et OpenBSD; + votre Apache a donc probablement été construit avec cette option.

+ +

Si vous souhaitez qu'Apache ne gère que des connexions IPv4, sans se + soucier de ce que vos plateforme et APR supportent, spécifiez une adresse + IPv4 dans toutes les directives + Listen, comme dans l'exemple + suivant :

+ +

+ Listen 0.0.0.0:80
+ Listen 192.170.2.1:80 +

+ +

Si votre plateforme le supporte et si vous souhaitez qu'Apache gère + des connexions IPv4 et IPv6 sur des points de connexion séparés + (c'est à dire désactiver la traduction des adresses IPv6 au format IPv4), + utilisez l'option --disable-v4-mapped du script + configure. --disable-v4-mapped est + utilisé par défaut sur FreeBSD, NetBSD, et OpenBSD.

+
top
-

Faire fonctionner tout ceci avec les Serveurs Virtuels

- - -

Listen - n'implémente aucun Serveur Virtuel. Cette directive sert simplement - à informer le serveur principal sur quels addresses et ports écouter. - Dans le cas où aucune section - <VirtualHost> - n'est utilisée, le serveur répondra de la mème manière pour toutes - les requètes qu'il acceptera. Cependant des sections - <VirtualHost> - peuvent être utilisées pour qu'Apache réagisse de façon différente à - une requète selon l'adresse ou le port. Avant d'implémenter - un Serveur Virtuel au moyen de la directive - <VirtualHost>, la directive - Listen - doit tre utilisée pour que le serveur écoute sur l'adresse - ou le port spécifié. Une section - <VirtualHost> - peut alors être utilisée pour définir la réaction du Serveur Virtuel pour une - adresse et un port spécifique. À noter que si un Serveur Virtuel est - positionné au moyen de la directive - <VirtualHost> - sur une adresse et un port sur lesquels le serveur n'est pas à l'écoute, - le Serveur Virtuel ne sera pas accessible.

-
+

Comment tout ceci fonctionne-t-il avec les hôtes virtuels

+ + +

La directive Listen n'implémente pas les hôtes virtuels. + Elle indique simplement au serveur principal sur quels adresses et ports + il doit écouter. Si aucune directive + <VirtualHost> + n'est présente, le serveur se comportera de la même façon pour toutes + les requêtes acceptées. En revanche, la directive + <VirtualHost> + peut être utilisée pour provoquer une réaction différente du serveur + pour un ou plusieurs adresses/ports. Pour implémenter un hôte virtuel, + on doit d'abord indiquer au serveur sur quels adresses et ports il doit écouter. + Ensuite, une section + <VirtualHost> + doit être créée pour chaque couple adresse+port spécifié afin de définir le + comportement de cet hôte virtuel. Notez que si la directive + <VirtualHost> + est définie pour une adresse et un port sur lesquels le serveur n'est pas censé + écouter, cet hôte virtuel ne sera pas accessible.

+

Langues Disponibles:  de  |  en  |  fr  | - ja  | - ko 

+ ja  | + ko 

diff --git a/docs/manual/bind.xml.fr b/docs/manual/bind.xml.fr index 6e287b7fe29..d9af4738dfe 100644 --- a/docs/manual/bind.xml.fr +++ b/docs/manual/bind.xml.fr @@ -1,7 +1,10 @@ - + - + + + + +Guide de la mise en cache - Serveur Apache HTTP + + + + + +
<-
+

Guide de la mise en cache

+
+

Langues Disponibles:  en  | + fr 

+
+ +

Ce document complète la documentation de référence des modules + mod_cache, + mod_disk_cache, mod_mem_cache, + mod_file_cache et du programme htcacheclean. + Il décrit l'utilisation des fonctionnalités de mise en cache d'Apache + pour accélérer les services web et proxy, tout en évitant les problèmes + courants et les erreurs de configuration.

+
+ +
top
+
+

Introduction

+ + +

Depuis la version 2.2 du serveur HTTP Apache, les modules + mod_cache + et mod_file_cache ne sont plus jugés expérimentaux + et on considère qu'ils peuvent être utilisés en production. Ces + architectures de mise en cache constituent un puissant concept + d'accélération de la gestion HTTP, tant comme serveur web originel + que comme mandataire.

+ +

Le module mod_cache et ses modules de soutien + mod_mem_cache et mod_disk_cache + permettent une mise en cache intelligente du point de vue HTTP. + Le contenu proprement dit est stocké dans le cache, + et mod_cache tente d'honorer tous les en-têtes HTTP et les options + qui définissent la possibilité de mise en cache du contenu. Il gère non + seulement le contenu local, mais aussi le contenu mandaté. + mod_cache + est conçu pour des configurations de mise en cache simples ou complexes, + dans lesquels vous traitez de contenu mandaté, de contenu local dynamique + ou avez besoin d'accélérer l'accès à des fichiers locaux qui sont modifiés + au cours du temps.

+ +

Le module mod_file_cache quant à lui, constitue une + forme de mise en cache plus basique, mais quelques fois intéressante. + Plutôt que de gérer la complexité de s'assurer de manière active de la + possibilité de mise en cache d'URLs, + mod_file_cache fournit des méthodes pour la gestion + et l'édition de fichiers en mémoire afin de maintenir un cache de fichiers + dans l'état où ils étaient la dernière fois qu'Apache a démarré. + En tant que tel, mod_file_cache a été conçu pour améliorer + le temps d'accès à des fichiers locaux statiques qui ne sont modifiés + que rarement.

+ +

Etant donné que mod_file_cache constitue une + implémentation de mise en cache relativement simple, mises à part les + sections spécifiques sur les directives CacheFile et MMapStatic, les explications fournies + dans ce guide concernent l'architecture de mise en cache du + module mod_cache.

+ +

Pour tirer parti efficacement de ce document, les bases de HTTP doivent + vous être familières, et vous devez avoir lu les sections + Mise en correspondance des + URLs avec le système de fichiers et + Négociation sur le contenu + du guide de l'utilisateur.

+ +
top
+
+

Vue d'ensemble de la mise en cache

+ + + + + +

mod_cache peut faire intervenir deux phases + principales pendant la durée de vie d'une requête. + En premier lieu, mod_cache + est un module de mise en correspondance d'URLs, ce qui signifie que si + une URL a été mise en cache, et que la version du cache de cette URL n'est + pas arrivée à expiration, la requête sera traitée directement par + mod_cache.

+ +

Ceci entraîne que toutes autres actions qui se dérouleraient normalement + au cours du processus de traitement d'une requête -- par exemple un + traitement effectué par mod_proxy, ou + mod_rewrite -- + ne seront pas effectuées. Mais c'est justement l'intérêt + de la mise en cache préalable du contenu.

+ +

Si l'URL ne se trouve pas dans le cache, mod_cache + va ajouter un filtre au traitement de la requête. + Une fois le contenu de la réponse HTTP trouvé par Apache de manière classique, le + filtre sera exécuté en même temps que le contenu sera transmis au client. + S'il est déterminé que le contenu peut être mis en cache, + il sera sauvegardé dans le cache pour une utilisation future.

+ +

Si l'URL se trouve dans le cache, mais est arrivée à expiration, + le filtre est quand-même ajouté, mais mod_cache va créer + une requête conditionnelle en arrière-plan, pour déterminer si la version + du cache est encore à jour. Si la version du cache est encore à jour, ses + meta-informations seront mises à jour et la requête sera servie à partir du + cache. Si la version du contenu n'est plus à jour, elle sera supprimée et le + filtre va sauvegarder le contenu mis à jour dans le cache + au moment où il sera servi.

+ +

Amélioration du taux de présence dans le cache

+ + +

Lors de la mise en cache de contenu généré localement, le + positionnement de la directive + UseCanonicalName à + On peut améliorer de manière spectaculaire le taux de + présence dans le cache. Ceci est du au fait que le nom d'hôte de l'hôte + virtuel qui sert le contenu constitue une partie de la clé de cache. + Avec UseCanonicalName positionnée + à On, + les hôtes virtuels possédant plusieurs noms de serveur ou alias ne + généreront pas d'entités de cache différentes, et le contenu sera mis en + cache en faisant référence au nom d'hôte canonique.

+ +

Les documents mis en cache ne seront servis qu'en réponse à des + requêtes de type URL, car la mise en cache est effectuée lors de la phase + de traduction de l'URL en nom de fichier. + En général, cela n'a que peu d'effet, à moins que vous n'utilisiez les + Inclusions Côté Serveur (SSI);

+ +
+<!-- L'inclusion suivante peut être mise en cache -->
+<!--#include virtual="/footer.html" -->
+
+<!-- L'inclusion suivante ne peut pas être mise en cache -->
+<!--#include file="/path/to/footer.html" -->
+ +

Si vous utilisez les SSI, et voulez bénéficier de la vitesse de + service depuis le cache, vous devez utiliser des inclusions de type + virtual.

+ + +

Périodes d'expiration

+ + +

La période d'expiration par défaut pour les entités du cache est + d'une heure; elle peut cependant être facilement modifiée à l'aide de + la directive CacheDefaultExpire. Cette valeur par + défaut n'est utilisée que lorsque la source originale du contenu ne + précise pas de période d'expiration ou d'heure de dernière + modification.

+ +

Si une réponse ne contient pas d'en-tête Expires mais + inclut un en-tête Last-Modified, mod_cache + peut déduire une période d'expiration en se basant sur la valeur de la + directive CacheLastModifiedFactor.

+ +

La période d'expiration des contenus locaux peut être ajustée finement + en utilisant le module mod_expires.

+ +

On peut aussi contrôler la période d'expiration maximale en utilisant + la directive CacheMaxExpire.

+ + + +

Guide succinct des requêtes conditionnelles

+ + +

Lorsqu'un contenu est arrivé à expiration dans le cache et fait + l'objet d'une nouvelle demande d'accès, plutôt que traiter directement + la requête originale, Apache préfère utiliser une + requête conditionnelle.

+ +

HTTP propose toute une panoplie d'en-têtes qui permettent à un client, + ou au cache de distinguer les différentes versions d'un même contenu. Par + exemple, si une ressource a été servie avec un en-tête "Etag:", il est + possible de créer une requête conditionnelle contenant un en-tête + "If-None-Match:". Si une ressource a été servie avec un en-tête + "Last-Modified:", il est possible de créer une requête conditionnelle + contenant un en-tête "If-Modified-Since:", etc....

+ +

Lorsqu'une telle requête conditionnelle est créée, la reponse diffère + selon que le contenu satisfait ou non aux conditions. Si une requête est + créée avec un en-tête "If-Modified-Since:", et le contenu n'a pas été + modifié depuis le moment indiqué dans la requête, alors un laconique + "304 Not Modified" est retourné.

+ +

Si le contenu a été modifié, il est servi comme si la requête n'avait + pas été conditionnelle à l'origine.

+ +

Les bénéfices des requêtes conditionnelles pour ce qui concerne la + mise en cache sont de deux sortes. Premièrement, quand une telle requête + est envoyée au processus en arrière-plan, il sera aisé de déterminer + si le contenu que devra servir le processus en arrière-plan correspond + au contenu stocké dans le cache, sans être obligé de transmettre la + totalité de la ressource.

+ +

Deuxièmement, les requêtes conditionnelles sont en général moins + coûteuses en ressources pour le processus en arrière-plan. + Pour ce qui est des fichiers + statiques, l'action type est un appel à stat() ou un appel + système similaire, pour déterminer si la taille du fichier ou sa date de + modification ont changé. Ainsi, même si Apache met en cache le contenu + local, un contenu arrivé à expiration pourra être servi plus rapidement + depuis le cache s'il n'a pas été modifié, parce que la lecture depuis le + cache est plus rapide que la lecture depuis le processus en arrière-plan + (à comparer à la différence de vitesse entre la lecture depuis un cache en + mémoire et la lecture depuis un disque).

+ + +

Que peut-on mettre en cache ?

+ + +

Comme mentionné plus haut, les deux styles de mise en cache d'Apache + fonctionnent différemment; la mise en cache de + mod_file_cache conserve les contenus des fichiers + tels qu'ils étaient au démarrage d'Apache. Quand une requête pour un + fichier mis en cache par ce module est envoyée, elle est interceptée + et le fichier mis en cache est servi.

+ +

La mise en cache de mod_cache, quant à elle, est + plus complexe. Lors du traitement d'une requête, le module de mise en + cache déterminera si le contenu peut être mis en cache, s'il ne l'a + pas déjà été auparavant. Les conditions qui permettent de déterminer + la possibilité de mise en cache d'une réponse sont :

+ +
    +
  1. La mise en cache doit être activée pour cette URL. Voir les + directives CacheEnable et CacheDisable.
  2. + +
  3. La reponse doit avoir un code de statut HTTP de 200, 203, 300, 301 + ou 410.
  4. + +
  5. La requête doit être de type HTTP GET.
  6. + +
  7. Si la requête contient un en-tête "Authorization:", la réponse ne + sera pas mise en cache.
  8. + +
  9. Si la réponse contient un en-tête "Authorization:", elle doit aussi + contenir une option "s-maxage", "must-revalidate" ou "public" + dans l'en-tête "Cache-Control:".
  10. + +
  11. Si l'URL contenait une requête sous forme de chaîne de caractères + (provenant par exemple d'une méthode GET de formulaire HTML), elle ne + sera pas mise en cache à moins que la réponse ne contienne un en-tête + "Expires:", comme précisé dans la RFC2616 section 13.9.
  12. + +
  13. Si la réponse a un statut de 200 (OK), elle doit aussi contenir + au moins un des en-têtes "Etag", "Last-Modified" ou + "Expires", à moins que la directive + CacheIgnoreNoLastMod + ne précise d'autres contraintes.
  14. + +
  15. Si la réponse contient l'option "private" dans un en-tête + "Cache-Control:", elle ne sera pas mise en cache à moins que la + directive + CacheStorePrivate + ne précise d'autres contraintes.
  16. + +
  17. De même, si la réponse contient l'option "no-store" dans un en-tête + "Cache-Control:", elle ne sera pas mise en cache à moins que la + directive + CacheStoreNoStore + n'ait été utilisée.
  18. + +
  19. Une réponse ne sera pas mise en cache si elle comporte un en-tête + "Vary:" contenant le caractère "*" qui correspond à toute + chaîne de caractères.
  20. +
+ + +

Qu'est ce qui ne doit pas être mis en cache ?

+ + +

En bref, tout contenu qui varie beaucoup avec le temps, ou en fonction + de particularités de la requête qui ne sont pas couvertes par la + négociation HTTP, ne doit pas être mis en cache.

+ +

Un contenu dynamique qui varie en fonction de l'adresse IP du + demandeur, ou qui est modifié toutes les 5 minutes, ne devra en général + pas être mis en cache.

+ +

Si par contre le contenu servi diffère en fonction de la valeur de + divers en-têtes HTTP, il se peut que l'on puisse le mettre en cache + intelligemment en utilisant un en-tête "Vary".

+ + +

Contenu variable et/ou négocié

+ + +

Si mod_cache reçoit une réponse contenant un en-tête + "Vary", lorsqu'un contenu a été demandé par un processus d'arrière-plan, + il va s'efforcer de la traiter intelligemment. Si possible, + mod_cache va détecter les en-têtes attribués dans la + réponse "Vary" à l'occasion des futures demandes, et servir une réponse + correcte à partir du cache.

+ +

Si par exemple, une réponse est reçue avec l'en-tête Vary suivant,

+ +

+Vary: negotiate,accept-language,accept-charset +

+ +

mod_cache ne servira aux demandeurs que le contenu + mis en cache qui correspond au contenu des en-têtes accept-language et + accept-charset de la requête originale.

+ + +
top
+
+

Considérations sur la sécurité

+ + +

Autorisation et contrôle d'accès

+ + +

Utiliser mod_cache revient sensiblement à la même + chose qu'avoir un mandataire inverse intégré (reverse-proxy). Les requêtes + seront servies par le module de mise en cache sauf si ce dernier + détermine qu'un processus d'arrière-plan doit être appelé. La mise en + cache de ressources locales modifie considérablement le modèle de + sécurité d'Apache.

+ +

Comme le parcours de la hiérarchie d'un système de fichiers pour + examiner le contenu d'éventuels fichiers + .htaccess serait une opération très coûteuse en ressources, + annulant partiellement de ce fait l'intérêt de la mise en cache + (accélérer le traitement des requêtes), + mod_cache ne se préoccupe pas de savoir s'il a + l'autorisation de servir une entité mise en cache. En d'autres termes, + si mod_cache a mis en cache un certain contenu, ce + dernier sera servi à partir du cache tant qu'il ne sera pas arrivé à + expiration.

+ +

Si par exemple, votre configuration autorise l'accès à une ressource + en fonction de l'adresse IP, vous devez vous assurer que ce contenu n'est + pas mis en cache. Ceci est possible en utilisant la directive + CacheDisable, ou le module + mod_expires. Livré à lui-même, + mod_cache - pratiquement comme un mandataire inverse - + mettrait en cache le contenu lors de son service, et le servirait ensuite + à tout client, vers n'importe quelle adresse IP.

+ + +

Piratages locaux

+ + +

Etant donné que les requêtes des utilisateurs finaux peuvent être + servies depuis le cache, ce dernier est une cible potentielle pour ceux + qui veulent défigurer un contenu ou interférer avec lui. Il est important + de garder à l'esprit que l'utilisateur sous lequel tourne Apache doit + toujours avoir l'accès en écriture dans le cache. Ceci est en contraste + total avec la recommandation usuelle d'interdire à l'utilisateur sous + lequel tourne Apache + l'accès en écriture à tout contenu.

+ +

Si l'utilisateur sous lequel tourne Apache est compromis, + par exemple à cause d'une + faille de sécurité dans un processus CGI, il est possible que le cache + fasse l'objet d'une attaque. Il est relativement aisé d'insérer ou de + modifier une entité dans le cache en utilisant le module + mod_disk_cache.

+ +

Cela représente un risque relativement élévé par rapport aux autres + types d'attaques qu'il est possible de mener sous l'utilisateur apache. + Si vous utilisez mod_disk_cache, vous devez garder ceci + à l'esprit : effectuez toujours les mises à jour d'Apache quand des + correctifs de sécurité sont annoncés et exécutez les processus CGI sous + un utilisateur autre qu'apache en utilisant + suEXEC dans la mesure du possible.

+ + + +

Empoisonnement du cache (Cache Poisoning)

+ + +

Si vous utilisez Apache comme serveur mandataire avec mise en cache, + vous vous exposez aussi à un éventuel "Empoisonnement du + cache" (Cache poisoning). L'empoisonnement du cache est un terme général + pour désigner les attaques au cours desquelles l'attaquant fait en sorte + que le serveur mandataire renvoie un contenu incorrect (et souvent + indésirable) en provenance du serveur d'arrière plan. +

+ +

Par exemple, si les serveur DNS qu'utilise votre système où tourne + Apache sont vulnérables à l'empoisonnement du cache des DNS, un attaquant + pourra contrôler vers où Apache se connecte lorsqu'il demande un contenu + depuis le serveur d'origine. + Un autre exemple est constitué par les attaques ainsi nommées + "Dissimulation de requêtes HTTP" (HTTP request-smuggling).

+ +

Ce document n'est pas le bon endroit pour une discussion approfondie + à propos de la Dissimulation de requêtes HTTP (utilisez plutôt votre + moteur de recherche favori); il est cependant important de savoir qu'il + est possible d'élaborer une série de requêtes, et d'exploiter une + vulnérabilité d'un serveur web d'origine de telle façon que l'attaquant + puisse contrôler entièrement le contenu renvoyé par le mandataire.

+ +
top
+
+

Mise en cache de la gestion de fichier

+ + + + +

Le fait d'ouvrir un fichier peut en lui-même introduire un délai, + en particulier dans les systèmes de fichiers répartis sur le réseau. Apache + peut s'affranchir de ce délai en maintenant + un cache des descripteurs de fichiers + ouverts pour ce qui concerne les fichiers souvent accédés. Apache propose + actuellement deux implémentations différentes de mise en cache de la + gestion de fichier.

+ +

Directive CacheFile

+ + +

La forme la plus élémentaire de mise en cache que propose Apache est + fournie par le module mod_file_cache. + Plutôt que de mettre en cache le contenu des fichiers, ce cache maintient + une table des descripteurs de fichiers ouverts. Les fichiers à mettre en + cache de cette manière sont spécifiés dans le fichier de configuration + en utilisant la directive + CacheFile.

+ +

La directive + CacheFile demande à Apache + d'ouvrir le fichier lors de son démarrage et de réutiliser le descripteur + de fichier élaboré à cette occasion pour tous les + accès ultérieurs à ce fichier.

+ +
CacheFile /usr/local/apache2/htdocs/index.html
+ +

Si vous avez l'intention de mettre en cache un grand nombre de + fichiers de cette manière, vous devez vous assurer que le nombre maximum + de fichiers ouverts par votre système d'exploitation est correctement + défini.

+ +

Bien que l'utilisation de la directive + CacheFile + n'entraîne pas la mise en cache du contenu du fichier, cela ne signifie + pas qu'en cas de modification du fichier pendant l'exécution d'Apache, + ces changements seront pris en compte. Le fichier sera toujours servi + dans l'état où il était quand Apache a démarré.

+ +

Si le fichier est supprimé pendant l'exécution d'Apache, ce dernier + continuera à maintenir un descripteur de fichier ouvert et à servir le + fichier dans l'état où il était quand Apache a démarré. Cela signifie + aussi habituellement que malgré le fait que le fichier ait été supprimé, + et ne soit + plus accessible par le système de fichiers, l'espace libéré ne sera + restitué qu'à l'arrêt d'Apache quand le + descripteur de fichier sera fermé.

+ + +

Directive CacheEnable

+ + +

Le module mod_mem_cache propose aussi son propre + schéma de mise en cache de la gestion de fichier, qui peut être activé + à l'aide de la directive + CacheEnable.

+ +
CacheEnable fd /
+ +

A l'instar de tout ce qui concerne le module + mod_cache, ce mode de mise en cache de la gestion de + fichier est intelligent, et les descripteurs ne seront plus maintenus + lorsque le contenu mis en cache sera arrivé à expiration.

+ +
top
+
+

Mise en cache en mémoire

+ + + + +

Servir un contenu directement depuis la mémoire système est + universellement reconnu comme la méthode la plus rapide. Lire des fichiers + depuis un contrôleur de disque ou pire, depuis un réseau distant est plus + lent de plusieurs ordres de grandeur. Les contrôleurs de disque réalisent + en général des opérations mécaniques, et l'accès au réseau est limité par la + bande passante dont vous disposez. Par contre, les temps d'accès à la + mémoire sont de l'ordre de la nano-seconde.

+ +

Cependant la mémoire système n'est pas bon marché; à capacité égale, + c'est de loin le type de stockage le plus coûteux et il est important de + s'assurer qu'elle est utilisée efficacement. Le fait de mettre en cache + des fichiers en mémoire diminue d'autant la quantité de mémoire système + disponible. Comme nous le verrons plus loin, ce n'est pas un problème en + soi dans le cas de la mise en cache par l'intermédiaire du système + d'exploitation, mais si l'on utilise la mise en cache en mémoire propre à + Apache, il faut prendre garde à ne pas allouer trop de mémoire au cache. + Sinon le système sera contraint d'utiliser le swap, ce qui dégradera + sensiblement les performances.

+ +

Mise en cache par l'intermédiaire du système d'exploitation

+ + +

Dans la plupart des systèmes d'exploitation modernes, c'est le noyau + qui gère directement la mise en cache en mémoire des données relatives + aux fichiers. C'est une fonctionnalité puissante, et les systèmes + d'exploitation s'en acquittent fort bien pour la plus grande partie. + Considérons par exemple, dans le cas de Linux, la différence entre le + temps nécessaire à la première lecture d'un fichier et le temps + nécessaire à sa deuxième lecture;

+ +
+colm@coroebus:~$ time cat testfile > /dev/null
+real    0m0.065s
+user    0m0.000s
+sys     0m0.001s
+colm@coroebus:~$ time cat testfile > /dev/null
+real    0m0.003s
+user    0m0.003s
+sys     0m0.000s
+ +

Même pour ce petit fichier, il y a une grande différence entre les + temps nécessaires pour lire le fichier. Ceci est du au fait que le + noyau a mis en cache le contenu du fichier en mémoire.

+ +

Du fait de toujours pouvoir disposer de mémoire système, vous pouvez + être assuré qu'il y aura de plus en plus de contenus de fichiers stockés + dans ce cache. Ceci peut s'avérer une méthode de mise en cache en mémoire + très efficace, et ne nécessite aucune configuration supplémentaire + d'Apache.

+ +

De plus, comme le système d'exploitation sait si des fichiers + ont été + supprimés ou modifiés, il peut effacer automatiquement des contenus de + fichiers du cache lorsque cela s'avère nécessaire. Ceci constitue un gros + avantage par rapport à la mise en cache en mémoire d'Apache qui n'a + aucune possibilité de savoir si un fichier a été modifié.

+ + +

En dépit des performances et des avantages de la mise en cache + automatique par le système d'exploitation, la mise en cache en mémoire + peut être effectuée plus efficacement par Apache dans certaines + circonstances.

+ +

En premier lieu, un système d'exploitation ne peut mettre en cache que + les fichiers dont il a connaissance. Si vous exécutez Apache en tant que + serveur mandataire, les fichiers que vous mettez en cache ne sont pas + stockés en local mais sur un serveur distant. Si vous voulez tout de même + bénéficier de la vitesse incomparable procurée par la mise en cache en + mémoire, la mise en cache propre à Apache sera nécessaire.

+ +

Mise en cache à l'aide de la directive MMapStatic

+ + +

La directive MMapStatic + fournie par le module mod_file_cache vous permet de + demander à Apache de charger un contenu de fichier statique en mémoire + lors de son démarrage (à l'aide de l'appel système mmap). Apache + utilisera le contenu chargé en mémoire pour satisfaire ultérieurement + toutes les demandes d'accès à ce fichier.

+ +
MMapStatic /usr/local/apache2/htdocs/index.html
+ +

Comme dans le cas de la directive + CacheFile, toute + modification du fichier ne sera plus prise en compte par Apache une fois + ce dernier démarré.

+ +

La directive + MMapStatic ne gardant + pas la trace de la quantité de mémoire qu'elle alloue, vous devez prendre + garde de ne pas en abuser. Chaque processus enfant d'Apache utilisant + sa propre réplique de la mémoire allouée, il est donc d'une importance + critique de s'assurer que les fichiers chargés ne sont pas d'une taille + trop importante afin d'épargner au système l'utilisation du swap.

+ + +

Mise en cache à l'aide du module mod_mem_cache

+ + +

Le module mod_mem_cache propose une mise en cache en + mémoire intelligente du point de vue du protocole HTTP. Il utilise aussi + directement le "tas" de la mémoire, ce qui signifie que même si + MMap n'est pas supporté par votre système, + mod_mem_cache pourra quand-même effectuer + la mise en cache.

+ +

La mise en cache selon cette méthode est activée comme suit :

+ +
+# Activation de la mise en cache en mémoire
+CacheEnable mem /
+
+# Limite la taille du cache à 1 Mégaoctet
+MCacheSize 1024
+ +
top
+
+

Mise en cache sur disque

+ + + + +

Le module mod_disk_cache fournit un mécanisme de mise + en cache sur disque au module mod_cache. Comme dans le cas + du module mod_mem_cache, cette mise en cache est + intelligente et le contenu ne sera servi qu'à partir du cache tant qu'il + sera considéré comme valide.

+ +

Typiquement, le module sera configuré comme suit :

+ +
+CacheRoot   /var/cache/apache/
+CacheEnable disk /
+CacheDirLevels 2
+CacheDirLength 1
+ +

Il est important de savoir que, les fichiers mis en cache étant stockés + localement, la mise en cache par l'intermédiaire du système d'exploitation + sera en général aussi appliquée à leurs accès. Si bien que même si les + fichiers sont stockés sur disque, s'il font l'objet d'accès fréquents, + il est probable que le système d'exploitation s'appliquera à ce qu'ils + soient servis à partir de la mémoire.

+ +

Comprendre le stockage dans le cache

+ + +

Pour stocker des entités dans le cache, + le module mod_disk_cache crée une empreinte (hash) de 22 + caractères de l'URL qui a fait l'objet d'une requête. Cette empreinte + comprend le nom d'hôte, le protocole, le port, le chemin et tout argument + de type CGI associé à l'URL, afin d'être sur que plusieurs URLs + n'interfèrent pas entre elles.

+ +

Chaque position de l'empreinte peut contenir un caractère + choisi parmi 64 caractères différents, il y a donc + 64^22 possibilités pour une empreinte. Par exemple, une URL peut posséder + l'empreinte xyTGxSMO2b68mBCykqkp1w. Cette empreinte est + utilisée pour préfixer les noms de fichiers spécifiques à cette URL à + l'intérieur du cache; cependant, elle est tout d'abord placée dans les + répertoires du cache selon les directives + CacheDirLevels et + CacheDirLength.

+ +

La directive + CacheDirLevels + définit le nombre de niveaux de sous-répertoires, et + CacheDirLength + le nombre de caractères composant le nom des sous-répertoires. Dans + l'exemple donné plus haut, l'empreinte se trouvera à : + /var/cache/apache/x/y/TGxSMO2b68mBCykqkp1w.

+ +

Cette technique a pour but principal de réduire le nombre de + sous-répertoires ou de fichiers contenus dans un répertoire particulier, + car le fonctionnement de la plupart des systèmes de fichiers est ralenti + quand ce nombre augmente. Avec la valeur "1" pour la directive + CacheDirLength, + il peut y avoir au plus 64 sous-répertoires à un niveau quelconque. + Avec la valeur "2", il peut y en avoir 64 * 64, etc... + A moins d'avoir une bonne raison pour ne pas le faire, l'utilisation de + la valeur "1" pour la directive + CacheDirLength + est recommandée.

+ +

Le paramétrage de la directive + CacheDirLevels + dépend du nombre de fichiers que vous pensez stocker dans le cache. + Avec une valeur de "2" comme dans l'exemple donné plus haut, + 4096 sous-répertoires peuvent être créés au total. Avec 1 million de + fichiers dans le cache, cela équivaut à environ 245 URLs mises en cache + dans chaque répertoire.

+ +

Chaque URL nécessite au moins deux fichiers dans le cache. Ce sont en + général un fichier ".header", qui contient des meta-informations à propos + de l'URL, comme la date de son arrivée à expiration, + et un fichier ".data" qui est la copie exacte du contenu à servir.

+ +

Dans le cas d'un contenu négocié via l'en-tête "Vary", un répertoire + ".vary" sera créé pour l'URL en question. Ce répertoire contiendra de + multiples fichiers ".data" correspondant aux différents contenus + négociés.

+ + +

Maintenance du cache sur disque

+ + +

Bien que le module mod_disk_cache supprime un contenu + du cache lorsqu'il est arrivé à expiration, il ne maintient aucune + information à propos de la taille totale du cache ou de l'espace restant + disponible.

+ +

Par contre l'utilitaire + htcacheclean fourni avec Apache + vous permet, comme son nom l'indique, de nettoyer le cache périodiquement. + Déterminer la fréquence à laquelle lancer htcacheclean et la taille souhaitée + pour le cache est une tâche relativement complexe et il vous faudra de + nombreux essais et erreurs pour arriver à sélectionner des valeurs + optimales.

+ +

htcacheclean opère selon deux + modes. Il peut s'exécuter comme démon résident, ou être lancé + périodiquement par cron. htcacheclean peut mettre une heure + ou plus pour traiter de très grands caches (plusieurs dizaines de + Gigaoctets) et si vous l'exécutez à partir de cron, il vous est + conseillé de déterminer la durée typique d'un traitement, afin d'éviter + d'exécuter plusieurs instances à la fois.

+ +

+
+ Figure 1: Croissance + typique du cache / séquence de nettoyage.

+ +

Comme mod_disk_cache ne tient pas compte de l'espace + utilisé dans le cache, vous devez vous assurer que + htcacheclean est configuré de + façon à laisser suffisamment d'"espace de croissance" + à la suite d'un nettoyage.

+ + +
+
+

Langues Disponibles:  en  | + fr 

+
+ \ No newline at end of file diff --git a/docs/manual/caching.xml.fr b/docs/manual/caching.xml.fr new file mode 100644 index 00000000000..4eecab8f807 --- /dev/null +++ b/docs/manual/caching.xml.fr @@ -0,0 +1,800 @@ + + + + + + + + + + + + + Guide de la mise en cache + + +

Ce document complète la documentation de référence des modules + mod_cache, + mod_disk_cache, mod_mem_cache, + mod_file_cache et du programme htcacheclean. + Il décrit l'utilisation des fonctionnalités de mise en cache d'Apache + pour accélérer les services web et proxy, tout en évitant les problèmes + courants et les erreurs de configuration.

+
+ +
+ Introduction + +

Depuis la version 2.2 du serveur HTTP Apache, les modules + mod_cache + et mod_file_cache ne sont plus jugés expérimentaux + et on considère qu'ils peuvent être utilisés en production. Ces + architectures de mise en cache constituent un puissant concept + d'accélération de la gestion HTTP, tant comme serveur web originel + que comme mandataire.

+ +

Le module mod_cache et ses modules de soutien + mod_mem_cache et mod_disk_cache + permettent une mise en cache intelligente du point de vue HTTP. + Le contenu proprement dit est stocké dans le cache, + et mod_cache tente d'honorer tous les en-têtes HTTP et les options + qui définissent la possibilité de mise en cache du contenu. Il gère non + seulement le contenu local, mais aussi le contenu mandaté. + mod_cache + est conçu pour des configurations de mise en cache simples ou complexes, + dans lesquels vous traitez de contenu mandaté, de contenu local dynamique + ou avez besoin d'accélérer l'accès à des fichiers locaux qui sont modifiés + au cours du temps.

+ +

Le module mod_file_cache quant à lui, constitue une + forme de mise en cache plus basique, mais quelques fois intéressante. + Plutôt que de gérer la complexité de s'assurer de manière active de la + possibilité de mise en cache d'URLs, + mod_file_cache fournit des méthodes pour la gestion + et l'édition de fichiers en mémoire afin de maintenir un cache de fichiers + dans l'état où ils étaient la dernière fois qu'Apache a démarré. + En tant que tel, mod_file_cache a été conçu pour améliorer + le temps d'accès à des fichiers locaux statiques qui ne sont modifiés + que rarement.

+ +

Etant donné que mod_file_cache constitue une + implémentation de mise en cache relativement simple, mises à part les + sections spécifiques sur les directives CacheFile et MMapStatic, les explications fournies + dans ce guide concernent l'architecture de mise en cache du + module mod_cache.

+ +

Pour tirer parti efficacement de ce document, les bases de HTTP doivent + vous être familières, et vous devez avoir lu les sections + Mise en correspondance des + URLs avec le système de fichiers et + Négociation sur le contenu + du guide de l'utilisateur.

+ +
+ +
+ + Vue d'ensemble de la mise en cache + + + + mod_cache + mod_mem_cache + mod_disk_cache + mod_file_cache + + + CacheEnable + CacheDisable + MMapStatic + CacheFile + CacheFile + UseCanonicalName + CacheNegotiatedDocs + + + +

mod_cache peut faire intervenir deux phases + principales pendant la durée de vie d'une requête. + En premier lieu, mod_cache + est un module de mise en correspondance d'URLs, ce qui signifie que si + une URL a été mise en cache, et que la version du cache de cette URL n'est + pas arrivée à expiration, la requête sera traitée directement par + mod_cache.

+ +

Ceci entraîne que toutes autres actions qui se dérouleraient normalement + au cours du processus de traitement d'une requête -- par exemple un + traitement effectué par mod_proxy, ou + mod_rewrite -- + ne seront pas effectuées. Mais c'est justement l'intérêt + de la mise en cache préalable du contenu.

+ +

Si l'URL ne se trouve pas dans le cache, mod_cache + va ajouter un filtre au traitement de la requête. + Une fois le contenu de la réponse HTTP trouvé par Apache de manière classique, le + filtre sera exécuté en même temps que le contenu sera transmis au client. + S'il est déterminé que le contenu peut être mis en cache, + il sera sauvegardé dans le cache pour une utilisation future.

+ +

Si l'URL se trouve dans le cache, mais est arrivée à expiration, + le filtre est quand-même ajouté, mais mod_cache va créer + une requête conditionnelle en arrière-plan, pour déterminer si la version + du cache est encore à jour. Si la version du cache est encore à jour, ses + meta-informations seront mises à jour et la requête sera servie à partir du + cache. Si la version du contenu n'est plus à jour, elle sera supprimée et le + filtre va sauvegarder le contenu mis à jour dans le cache + au moment où il sera servi.

+ +
+ Amélioration du taux de présence dans le cache + +

Lors de la mise en cache de contenu généré localement, le + positionnement de la directive + UseCanonicalName à + On peut améliorer de manière spectaculaire le taux de + présence dans le cache. Ceci est du au fait que le nom d'hôte de l'hôte + virtuel qui sert le contenu constitue une partie de la clé de cache. + Avec UseCanonicalName positionnée + à On, + les hôtes virtuels possédant plusieurs noms de serveur ou alias ne + généreront pas d'entités de cache différentes, et le contenu sera mis en + cache en faisant référence au nom d'hôte canonique.

+ +

Les documents mis en cache ne seront servis qu'en réponse à des + requêtes de type URL, car la mise en cache est effectuée lors de la phase + de traduction de l'URL en nom de fichier. + En général, cela n'a que peu d'effet, à moins que vous n'utilisiez les + Inclusions Côté Serveur (SSI);

+ + +
+<!-- L'inclusion suivante peut être mise en cache -->
+<!--#include virtual="/footer.html" -->
+
+<!-- L'inclusion suivante ne peut pas être mise en cache -->
+<!--#include file="/path/to/footer.html" -->
+
+ +

Si vous utilisez les SSI, et voulez bénéficier de la vitesse de + service depuis le cache, vous devez utiliser des inclusions de type + virtual.

+
+ +
+ Périodes d'expiration + +

La période d'expiration par défaut pour les entités du cache est + d'une heure; elle peut cependant être facilement modifiée à l'aide de + la directive CacheDefaultExpire. Cette valeur par + défaut n'est utilisée que lorsque la source originale du contenu ne + précise pas de période d'expiration ou d'heure de dernière + modification.

+ +

Si une réponse ne contient pas d'en-tête Expires mais + inclut un en-tête Last-Modified, mod_cache + peut déduire une période d'expiration en se basant sur la valeur de la + directive CacheLastModifiedFactor.

+ +

La période d'expiration des contenus locaux peut être ajustée finement + en utilisant le module mod_expires.

+ +

On peut aussi contrôler la période d'expiration maximale en utilisant + la directive CacheMaxExpire.

+ +
+ +
+ Guide succinct des requêtes conditionnelles + +

Lorsqu'un contenu est arrivé à expiration dans le cache et fait + l'objet d'une nouvelle demande d'accès, plutôt que traiter directement + la requête originale, Apache préfère utiliser une + requête conditionnelle.

+ +

HTTP propose toute une panoplie d'en-têtes qui permettent à un client, + ou au cache de distinguer les différentes versions d'un même contenu. Par + exemple, si une ressource a été servie avec un en-tête "Etag:", il est + possible de créer une requête conditionnelle contenant un en-tête + "If-None-Match:". Si une ressource a été servie avec un en-tête + "Last-Modified:", il est possible de créer une requête conditionnelle + contenant un en-tête "If-Modified-Since:", etc....

+ +

Lorsqu'une telle requête conditionnelle est créée, la reponse diffère + selon que le contenu satisfait ou non aux conditions. Si une requête est + créée avec un en-tête "If-Modified-Since:", et le contenu n'a pas été + modifié depuis le moment indiqué dans la requête, alors un laconique + "304 Not Modified" est retourné.

+ +

Si le contenu a été modifié, il est servi comme si la requête n'avait + pas été conditionnelle à l'origine.

+ +

Les bénéfices des requêtes conditionnelles pour ce qui concerne la + mise en cache sont de deux sortes. Premièrement, quand une telle requête + est envoyée au processus en arrière-plan, il sera aisé de déterminer + si le contenu que devra servir le processus en arrière-plan correspond + au contenu stocké dans le cache, sans être obligé de transmettre la + totalité de la ressource.

+ +

Deuxièmement, les requêtes conditionnelles sont en général moins + coûteuses en ressources pour le processus en arrière-plan. + Pour ce qui est des fichiers + statiques, l'action type est un appel à stat() ou un appel + système similaire, pour déterminer si la taille du fichier ou sa date de + modification ont changé. Ainsi, même si Apache met en cache le contenu + local, un contenu arrivé à expiration pourra être servi plus rapidement + depuis le cache s'il n'a pas été modifié, parce que la lecture depuis le + cache est plus rapide que la lecture depuis le processus en arrière-plan + (à comparer à la différence de vitesse entre la lecture depuis un cache en + mémoire et la lecture depuis un disque).

+
+ +
+ Que peut-on mettre en cache ? + +

Comme mentionné plus haut, les deux styles de mise en cache d'Apache + fonctionnent différemment; la mise en cache de + mod_file_cache conserve les contenus des fichiers + tels qu'ils étaient au démarrage d'Apache. Quand une requête pour un + fichier mis en cache par ce module est envoyée, elle est interceptée + et le fichier mis en cache est servi.

+ +

La mise en cache de mod_cache, quant à elle, est + plus complexe. Lors du traitement d'une requête, le module de mise en + cache déterminera si le contenu peut être mis en cache, s'il ne l'a + pas déjà été auparavant. Les conditions qui permettent de déterminer + la possibilité de mise en cache d'une réponse sont :

+ +
    +
  1. La mise en cache doit être activée pour cette URL. Voir les + directives CacheEnable et CacheDisable.
  2. + +
  3. La reponse doit avoir un code de statut HTTP de 200, 203, 300, 301 + ou 410.
  4. + +
  5. La requête doit être de type HTTP GET.
  6. + +
  7. Si la requête contient un en-tête "Authorization:", la réponse ne + sera pas mise en cache.
  8. + +
  9. Si la réponse contient un en-tête "Authorization:", elle doit aussi + contenir une option "s-maxage", "must-revalidate" ou "public" + dans l'en-tête "Cache-Control:".
  10. + +
  11. Si l'URL contenait une requête sous forme de chaîne de caractères + (provenant par exemple d'une méthode GET de formulaire HTML), elle ne + sera pas mise en cache à moins que la réponse ne contienne un en-tête + "Expires:", comme précisé dans la RFC2616 section 13.9.
  12. + +
  13. Si la réponse a un statut de 200 (OK), elle doit aussi contenir + au moins un des en-têtes "Etag", "Last-Modified" ou + "Expires", à moins que la directive + CacheIgnoreNoLastMod + ne précise d'autres contraintes.
  14. + +
  15. Si la réponse contient l'option "private" dans un en-tête + "Cache-Control:", elle ne sera pas mise en cache à moins que la + directive + CacheStorePrivate + ne précise d'autres contraintes.
  16. + +
  17. De même, si la réponse contient l'option "no-store" dans un en-tête + "Cache-Control:", elle ne sera pas mise en cache à moins que la + directive + CacheStoreNoStore + n'ait été utilisée.
  18. + +
  19. Une réponse ne sera pas mise en cache si elle comporte un en-tête + "Vary:" contenant le caractère "*" qui correspond à toute + chaîne de caractères.
  20. +
+
+ +
+ Qu'est ce qui ne doit pas être mis en cache ? + +

En bref, tout contenu qui varie beaucoup avec le temps, ou en fonction + de particularités de la requête qui ne sont pas couvertes par la + négociation HTTP, ne doit pas être mis en cache.

+ +

Un contenu dynamique qui varie en fonction de l'adresse IP du + demandeur, ou qui est modifié toutes les 5 minutes, ne devra en général + pas être mis en cache.

+ +

Si par contre le contenu servi diffère en fonction de la valeur de + divers en-têtes HTTP, il se peut que l'on puisse le mettre en cache + intelligemment en utilisant un en-tête "Vary".

+
+ +
+ Contenu variable et/ou négocié + +

Si mod_cache reçoit une réponse contenant un en-tête + "Vary", lorsqu'un contenu a été demandé par un processus d'arrière-plan, + il va s'efforcer de la traiter intelligemment. Si possible, + mod_cache va détecter les en-têtes attribués dans la + réponse "Vary" à l'occasion des futures demandes, et servir une réponse + correcte à partir du cache.

+ +

Si par exemple, une réponse est reçue avec l'en-tête Vary suivant,

+ + +Vary: negotiate,accept-language,accept-charset + + +

mod_cache ne servira aux demandeurs que le contenu + mis en cache qui correspond au contenu des en-têtes accept-language et + accept-charset de la requête originale.

+
+ +
+ +
+ Considérations sur la sécurité + +
+ Autorisation et contrôle d'accès + +

Utiliser mod_cache revient sensiblement à la même + chose qu'avoir un mandataire inverse intégré (reverse-proxy). Les requêtes + seront servies par le module de mise en cache sauf si ce dernier + détermine qu'un processus d'arrière-plan doit être appelé. La mise en + cache de ressources locales modifie considérablement le modèle de + sécurité d'Apache.

+ +

Comme le parcours de la hiérarchie d'un système de fichiers pour + examiner le contenu d'éventuels fichiers + .htaccess serait une opération très coûteuse en ressources, + annulant partiellement de ce fait l'intérêt de la mise en cache + (accélérer le traitement des requêtes), + mod_cache ne se préoccupe pas de savoir s'il a + l'autorisation de servir une entité mise en cache. En d'autres termes, + si mod_cache a mis en cache un certain contenu, ce + dernier sera servi à partir du cache tant qu'il ne sera pas arrivé à + expiration.

+ +

Si par exemple, votre configuration autorise l'accès à une ressource + en fonction de l'adresse IP, vous devez vous assurer que ce contenu n'est + pas mis en cache. Ceci est possible en utilisant la directive + CacheDisable, ou le module + mod_expires. Livré à lui-même, + mod_cache - pratiquement comme un mandataire inverse - + mettrait en cache le contenu lors de son service, et le servirait ensuite + à tout client, vers n'importe quelle adresse IP.

+
+ +
+ Piratages locaux + +

Etant donné que les requêtes des utilisateurs finaux peuvent être + servies depuis le cache, ce dernier est une cible potentielle pour ceux + qui veulent défigurer un contenu ou interférer avec lui. Il est important + de garder à l'esprit que l'utilisateur sous lequel tourne Apache doit + toujours avoir l'accès en écriture dans le cache. Ceci est en contraste + total avec la recommandation usuelle d'interdire à l'utilisateur sous + lequel tourne Apache + l'accès en écriture à tout contenu.

+ +

Si l'utilisateur sous lequel tourne Apache est compromis, + par exemple à cause d'une + faille de sécurité dans un processus CGI, il est possible que le cache + fasse l'objet d'une attaque. Il est relativement aisé d'insérer ou de + modifier une entité dans le cache en utilisant le module + mod_disk_cache.

+ +

Cela représente un risque relativement élévé par rapport aux autres + types d'attaques qu'il est possible de mener sous l'utilisateur apache. + Si vous utilisez mod_disk_cache, vous devez garder ceci + à l'esprit : effectuez toujours les mises à jour d'Apache quand des + correctifs de sécurité sont annoncés et exécutez les processus CGI sous + un utilisateur autre qu'apache en utilisant + suEXEC dans la mesure du possible.

+ +
+ +
+ Empoisonnement du cache (Cache Poisoning) + +

Si vous utilisez Apache comme serveur mandataire avec mise en cache, + vous vous exposez aussi à un éventuel "Empoisonnement du + cache" (Cache poisoning). L'empoisonnement du cache est un terme général + pour désigner les attaques au cours desquelles l'attaquant fait en sorte + que le serveur mandataire renvoie un contenu incorrect (et souvent + indésirable) en provenance du serveur d'arrière plan. +

+ +

Par exemple, si les serveur DNS qu'utilise votre système où tourne + Apache sont vulnérables à l'empoisonnement du cache des DNS, un attaquant + pourra contrôler vers où Apache se connecte lorsqu'il demande un contenu + depuis le serveur d'origine. + Un autre exemple est constitué par les attaques ainsi nommées + "Dissimulation de requêtes HTTP" (HTTP request-smuggling).

+ +

Ce document n'est pas le bon endroit pour une discussion approfondie + à propos de la Dissimulation de requêtes HTTP (utilisez plutôt votre + moteur de recherche favori); il est cependant important de savoir qu'il + est possible d'élaborer une série de requêtes, et d'exploiter une + vulnérabilité d'un serveur web d'origine de telle façon que l'attaquant + puisse contrôler entièrement le contenu renvoyé par le mandataire.

+
+
+ +
+ Mise en cache de la gestion de fichier + + + + mod_file_cache + mod_mem_cache + + + CacheFile + CacheEnable + CacheDisable + + + +

Le fait d'ouvrir un fichier peut en lui-même introduire un délai, + en particulier dans les systèmes de fichiers répartis sur le réseau. Apache + peut s'affranchir de ce délai en maintenant + un cache des descripteurs de fichiers + ouverts pour ce qui concerne les fichiers souvent accédés. Apache propose + actuellement deux implémentations différentes de mise en cache de la + gestion de fichier.

+ +
+ Directive CacheFile + +

La forme la plus élémentaire de mise en cache que propose Apache est + fournie par le module mod_file_cache. + Plutôt que de mettre en cache le contenu des fichiers, ce cache maintient + une table des descripteurs de fichiers ouverts. Les fichiers à mettre en + cache de cette manière sont spécifiés dans le fichier de configuration + en utilisant la directive + CacheFile.

+ +

La directive + CacheFile demande à Apache + d'ouvrir le fichier lors de son démarrage et de réutiliser le descripteur + de fichier élaboré à cette occasion pour tous les + accès ultérieurs à ce fichier.

+ + +
CacheFile /usr/local/apache2/htdocs/index.html
+
+ +

Si vous avez l'intention de mettre en cache un grand nombre de + fichiers de cette manière, vous devez vous assurer que le nombre maximum + de fichiers ouverts par votre système d'exploitation est correctement + défini.

+ +

Bien que l'utilisation de la directive + CacheFile + n'entraîne pas la mise en cache du contenu du fichier, cela ne signifie + pas qu'en cas de modification du fichier pendant l'exécution d'Apache, + ces changements seront pris en compte. Le fichier sera toujours servi + dans l'état où il était quand Apache a démarré.

+ +

Si le fichier est supprimé pendant l'exécution d'Apache, ce dernier + continuera à maintenir un descripteur de fichier ouvert et à servir le + fichier dans l'état où il était quand Apache a démarré. Cela signifie + aussi habituellement que malgré le fait que le fichier ait été supprimé, + et ne soit + plus accessible par le système de fichiers, l'espace libéré ne sera + restitué qu'à l'arrêt d'Apache quand le + descripteur de fichier sera fermé.

+
+ +
+ Directive CacheEnable + +

Le module mod_mem_cache propose aussi son propre + schéma de mise en cache de la gestion de fichier, qui peut être activé + à l'aide de la directive + CacheEnable.

+ + +
CacheEnable fd /
+
+ +

A l'instar de tout ce qui concerne le module + mod_cache, ce mode de mise en cache de la gestion de + fichier est intelligent, et les descripteurs ne seront plus maintenus + lorsque le contenu mis en cache sera arrivé à expiration.

+
+
+ +
+ Mise en cache en mémoire + + + + mod_mem_cache + mod_file_cache + + + CacheEnable + CacheDisable + MMapStatic + + + +

Servir un contenu directement depuis la mémoire système est + universellement reconnu comme la méthode la plus rapide. Lire des fichiers + depuis un contrôleur de disque ou pire, depuis un réseau distant est plus + lent de plusieurs ordres de grandeur. Les contrôleurs de disque réalisent + en général des opérations mécaniques, et l'accès au réseau est limité par la + bande passante dont vous disposez. Par contre, les temps d'accès à la + mémoire sont de l'ordre de la nano-seconde.

+ +

Cependant la mémoire système n'est pas bon marché; à capacité égale, + c'est de loin le type de stockage le plus coûteux et il est important de + s'assurer qu'elle est utilisée efficacement. Le fait de mettre en cache + des fichiers en mémoire diminue d'autant la quantité de mémoire système + disponible. Comme nous le verrons plus loin, ce n'est pas un problème en + soi dans le cas de la mise en cache par l'intermédiaire du système + d'exploitation, mais si l'on utilise la mise en cache en mémoire propre à + Apache, il faut prendre garde à ne pas allouer trop de mémoire au cache. + Sinon le système sera contraint d'utiliser le swap, ce qui dégradera + sensiblement les performances.

+ +
+ Mise en cache par l'intermédiaire du système d'exploitation + +

Dans la plupart des systèmes d'exploitation modernes, c'est le noyau + qui gère directement la mise en cache en mémoire des données relatives + aux fichiers. C'est une fonctionnalité puissante, et les systèmes + d'exploitation s'en acquittent fort bien pour la plus grande partie. + Considérons par exemple, dans le cas de Linux, la différence entre le + temps nécessaire à la première lecture d'un fichier et le temps + nécessaire à sa deuxième lecture;

+ +
+colm@coroebus:~$ time cat testfile > /dev/null
+real    0m0.065s
+user    0m0.000s
+sys     0m0.001s
+colm@coroebus:~$ time cat testfile > /dev/null
+real    0m0.003s
+user    0m0.003s
+sys     0m0.000s
+
+ +

Même pour ce petit fichier, il y a une grande différence entre les + temps nécessaires pour lire le fichier. Ceci est du au fait que le + noyau a mis en cache le contenu du fichier en mémoire.

+ +

Du fait de toujours pouvoir disposer de mémoire système, vous pouvez + être assuré qu'il y aura de plus en plus de contenus de fichiers stockés + dans ce cache. Ceci peut s'avérer une méthode de mise en cache en mémoire + très efficace, et ne nécessite aucune configuration supplémentaire + d'Apache.

+ +

De plus, comme le système d'exploitation sait si des fichiers + ont été + supprimés ou modifiés, il peut effacer automatiquement des contenus de + fichiers du cache lorsque cela s'avère nécessaire. Ceci constitue un gros + avantage par rapport à la mise en cache en mémoire d'Apache qui n'a + aucune possibilité de savoir si un fichier a été modifié.

+
+ +

En dépit des performances et des avantages de la mise en cache + automatique par le système d'exploitation, la mise en cache en mémoire + peut être effectuée plus efficacement par Apache dans certaines + circonstances.

+ +

En premier lieu, un système d'exploitation ne peut mettre en cache que + les fichiers dont il a connaissance. Si vous exécutez Apache en tant que + serveur mandataire, les fichiers que vous mettez en cache ne sont pas + stockés en local mais sur un serveur distant. Si vous voulez tout de même + bénéficier de la vitesse incomparable procurée par la mise en cache en + mémoire, la mise en cache propre à Apache sera nécessaire.

+ +
+ Mise en cache à l'aide de la directive MMapStatic + +

La directive MMapStatic + fournie par le module mod_file_cache vous permet de + demander à Apache de charger un contenu de fichier statique en mémoire + lors de son démarrage (à l'aide de l'appel système mmap). Apache + utilisera le contenu chargé en mémoire pour satisfaire ultérieurement + toutes les demandes d'accès à ce fichier.

+ + +
MMapStatic /usr/local/apache2/htdocs/index.html
+
+ +

Comme dans le cas de la directive + CacheFile, toute + modification du fichier ne sera plus prise en compte par Apache une fois + ce dernier démarré.

+ +

La directive + MMapStatic ne gardant + pas la trace de la quantité de mémoire qu'elle alloue, vous devez prendre + garde de ne pas en abuser. Chaque processus enfant d'Apache utilisant + sa propre réplique de la mémoire allouée, il est donc d'une importance + critique de s'assurer que les fichiers chargés ne sont pas d'une taille + trop importante afin d'épargner au système l'utilisation du swap.

+
+ +
+ Mise en cache à l'aide du module mod_mem_cache + +

Le module mod_mem_cache propose une mise en cache en + mémoire intelligente du point de vue du protocole HTTP. Il utilise aussi + directement le "tas" de la mémoire, ce qui signifie que même si + MMap n'est pas supporté par votre système, + mod_mem_cache pourra quand-même effectuer + la mise en cache.

+ +

La mise en cache selon cette méthode est activée comme suit :

+ +
+# Activation de la mise en cache en mémoire
+CacheEnable mem /
+
+# Limite la taille du cache à 1 Mégaoctet
+MCacheSize 1024
+
+
+
+ +
+ Mise en cache sur disque + + + + mod_disk_cache + + + CacheEnable + CacheDisable + + + +

Le module mod_disk_cache fournit un mécanisme de mise + en cache sur disque au module mod_cache. Comme dans le cas + du module mod_mem_cache, cette mise en cache est + intelligente et le contenu ne sera servi qu'à partir du cache tant qu'il + sera considéré comme valide.

+ +

Typiquement, le module sera configuré comme suit :

+ + +
+CacheRoot   /var/cache/apache/
+CacheEnable disk /
+CacheDirLevels 2
+CacheDirLength 1
+
+ +

Il est important de savoir que, les fichiers mis en cache étant stockés + localement, la mise en cache par l'intermédiaire du système d'exploitation + sera en général aussi appliquée à leurs accès. Si bien que même si les + fichiers sont stockés sur disque, s'il font l'objet d'accès fréquents, + il est probable que le système d'exploitation s'appliquera à ce qu'ils + soient servis à partir de la mémoire.

+ +
+ Comprendre le stockage dans le cache + +

Pour stocker des entités dans le cache, + le module mod_disk_cache crée une empreinte (hash) de 22 + caractères de l'URL qui a fait l'objet d'une requête. Cette empreinte + comprend le nom d'hôte, le protocole, le port, le chemin et tout argument + de type CGI associé à l'URL, afin d'être sur que plusieurs URLs + n'interfèrent pas entre elles.

+ +

Chaque position de l'empreinte peut contenir un caractère + choisi parmi 64 caractères différents, il y a donc + 64^22 possibilités pour une empreinte. Par exemple, une URL peut posséder + l'empreinte xyTGxSMO2b68mBCykqkp1w. Cette empreinte est + utilisée pour préfixer les noms de fichiers spécifiques à cette URL à + l'intérieur du cache; cependant, elle est tout d'abord placée dans les + répertoires du cache selon les directives + CacheDirLevels et + CacheDirLength.

+ +

La directive + CacheDirLevels + définit le nombre de niveaux de sous-répertoires, et + CacheDirLength + le nombre de caractères composant le nom des sous-répertoires. Dans + l'exemple donné plus haut, l'empreinte se trouvera à : + /var/cache/apache/x/y/TGxSMO2b68mBCykqkp1w.

+ +

Cette technique a pour but principal de réduire le nombre de + sous-répertoires ou de fichiers contenus dans un répertoire particulier, + car le fonctionnement de la plupart des systèmes de fichiers est ralenti + quand ce nombre augmente. Avec la valeur "1" pour la directive + CacheDirLength, + il peut y avoir au plus 64 sous-répertoires à un niveau quelconque. + Avec la valeur "2", il peut y en avoir 64 * 64, etc... + A moins d'avoir une bonne raison pour ne pas le faire, l'utilisation de + la valeur "1" pour la directive + CacheDirLength + est recommandée.

+ +

Le paramétrage de la directive + CacheDirLevels + dépend du nombre de fichiers que vous pensez stocker dans le cache. + Avec une valeur de "2" comme dans l'exemple donné plus haut, + 4096 sous-répertoires peuvent être créés au total. Avec 1 million de + fichiers dans le cache, cela équivaut à environ 245 URLs mises en cache + dans chaque répertoire.

+ +

Chaque URL nécessite au moins deux fichiers dans le cache. Ce sont en + général un fichier ".header", qui contient des meta-informations à propos + de l'URL, comme la date de son arrivée à expiration, + et un fichier ".data" qui est la copie exacte du contenu à servir.

+ +

Dans le cas d'un contenu négocié via l'en-tête "Vary", un répertoire + ".vary" sera créé pour l'URL en question. Ce répertoire contiendra de + multiples fichiers ".data" correspondant aux différents contenus + négociés.

+
+ +
+ Maintenance du cache sur disque + +

Bien que le module mod_disk_cache supprime un contenu + du cache lorsqu'il est arrivé à expiration, il ne maintient aucune + information à propos de la taille totale du cache ou de l'espace restant + disponible.

+ +

Par contre l'utilitaire + htcacheclean fourni avec Apache + vous permet, comme son nom l'indique, de nettoyer le cache périodiquement. + Déterminer la fréquence à laquelle lancer htcacheclean et la taille souhaitée + pour le cache est une tâche relativement complexe et il vous faudra de + nombreux essais et erreurs pour arriver à sélectionner des valeurs + optimales.

+ +

htcacheclean opère selon deux + modes. Il peut s'exécuter comme démon résident, ou être lancé + périodiquement par cron. htcacheclean peut mettre une heure + ou plus pour traiter de très grands caches (plusieurs dizaines de + Gigaoctets) et si vous l'exécutez à partir de cron, il vous est + conseillé de déterminer la durée typique d'un traitement, afin d'éviter + d'exécuter plusieurs instances à la fois.

+ +

+
+ Figure 1: Croissance + typique du cache / séquence de nettoyage.

+ +

Comme mod_disk_cache ne tient pas compte de l'espace + utilisé dans le cache, vous devez vous assurer que + htcacheclean est configuré de + façon à laisser suffisamment d'"espace de croissance" + à la suite d'un nettoyage.

+
+ +
+ +
diff --git a/docs/manual/caching.xml.meta b/docs/manual/caching.xml.meta index 3254ec360c3..d9b5f56336b 100644 --- a/docs/manual/caching.xml.meta +++ b/docs/manual/caching.xml.meta @@ -7,5 +7,6 @@ en + fr diff --git a/docs/manual/configuring.html b/docs/manual/configuring.html index 3ec3186dbc5..34ebcac1929 100644 --- a/docs/manual/configuring.html +++ b/docs/manual/configuring.html @@ -6,6 +6,10 @@ URI: configuring.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 +URI: configuring.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 + URI: configuring.html.ja.euc-jp Content-Language: ja Content-type: text/html; charset=EUC-JP diff --git a/docs/manual/configuring.html.en b/docs/manual/configuring.html.en index d4ebd2ca316..4d1809032d5 100644 --- a/docs/manual/configuring.html.en +++ b/docs/manual/configuring.html.en @@ -20,8 +20,9 @@

Available Languages:  de  |  en  | - ja  | - ko 

+ fr  | + ja  | + ko 

This document describes the files used to configure the Apache @@ -159,8 +160,9 @@ HTTP server.

Available Languages:  de  |  en  | - ja  | - ko 

+ fr  | + ja  | + ko 

diff --git a/docs/manual/configuring.html.fr b/docs/manual/configuring.html.fr new file mode 100644 index 00000000000..f4b40854f72 --- /dev/null +++ b/docs/manual/configuring.html.fr @@ -0,0 +1,185 @@ + + + +Fichiers de configuration - Serveur Apache HTTP + + + + + +
<-
+

Fichiers de configuration

+
+

Langues Disponibles:  de  | + en  | + fr  | + ja  | + ko 

+
+ +

Ce document décrit les fichiers utilisés pour configurer +le Serveur HTTP Apache.

+
+ +
top
+
+

Fichiers de configuration principaux

+ + + +

La configuration d'Apache est effectuée en plaçant des directives dans des fichiers de + configuration au format texte. Le fichier de configuration principal se nomme + en général + httpd.conf. La localisation de ce fichier est définie + à la compilation, mais peut être redéfinie à l'aide de l'option + de ligne de commande -f. En outre, d'autres fichiers de + configuration peuvent être ajoutés à l'aide de la directive + Include, et des caractères de + remplacement + peuvent être utilisés pour inclure de nombreux fichiers de configuration. + Des directives de tous types peuvent être placées dans chacun de ces fichiers + de configuration. Les modifications dans les fichiers de configuration + principaux ne sont prises en compte par Apache que lorsque le serveur + est démarré ou redémarré.

+ +

Le serveur lit aussi un fichier contenant les types de document mime; + ce fichier est défini par la directive TypesConfig, + et se nomme mime.types par défaut.

+
top
+
+

Syntaxe des fichiers de configuration

+ + +

Les fichiers de configuration d'Apache contiennent une directive + par ligne. + On peut utiliser l'anti-slash "\" comme dernier caractère d'une ligne + pour indiquer que la directive continue à la ligne suivante. + Il ne doit y avoir aucun caractère ni espace entre l'anti-slash et + la fin de la ligne.

+ +

Les directives dans les fichiers de configuration ne sont pas + sensibles à la casse, mais leurs arguments le sont souvent. Les lignes + qui débutent par le caractère "#" sont interprétées comme des + commentaires, et sont ignorées. Les commentaires ne doivent + pas être inclus dans une ligne après une directive + de configuration. Les lignes vides et les espaces précédant une directive + sont ignorés; vous pouvez par conséquent indenter les directives + afin d'améliorer la lisibilité.

+ +

Vous pouvez vérifier l'absence d'erreurs de syntaxe dans vos fichiers + de configuration sans démarrer le serveur à l'aide de la commande + apachectl configtest ou de l'option de ligne de commande + -t.

+
top
+
+

Modules

+ + + + +

Apache est un serveur modulaire. Ceci implique que seules les + fonctionnalités les plus courantes sont incluses dans le serveur de base. + Les fonctionnalités étendues sont fournies à l'aide de modules qui peuvent être chargés dans Apache. + Par défaut, un jeu de modules de base est inclus dans le + serveur à la compilation. Si le serveur est compilé de façon à utiliser + les modules chargés dynamiquement, + alors les modules peuvent être compilés séparément et chargés à + n'importe quel moment à l'aide de la directive + LoadModule. + Dans le cas contraire, Apache doit être recompilé pour ajouter ou + supprimer des modules. + Les directives de configuration peuvent être incluses de manière + conditionnelle selon la présence ou l'absence d'un module particulier + en les plaçant dans un bloc <IfModule>.

+ +

Pour voir quels modules ont été compilés avec le serveur, + vous pouvez utiliser l'option de ligne de commande -l.

+
top
+
+

Portée des directives

+ + + + +

Les directives placées dans les fichiers de configuration principaux + s'appliquent au serveur dans son ensemble. Si vous souhaitez modifier la + configuration d'une partie du serveur seulement, vous pouvez limiter la + portée de vos directives en les plaçant dans une section + <Directory>, <DirectoryMatch>, <Files>, <FilesMatch>, <Location>, ou <LocationMatch>. + Ces sections limitent le champ d'application des directives qu'elles + contiennent à des URls ou des portions du système de fichiers particulières. + Elles peuvent aussi être imbriquées, ce qui permet + une configuration très fine.

+ +

Apache peut servir simultanément de nombreux sites web au travers des + Hôtes Virtuels. La portée des directives peut ainsi + être limitée en les plaçant dans des sections + <VirtualHost>, + afin qu'elles ne s'appliquent qu'aux requêtes + pour un site web particulier.

+ +

Bien que la plupart des directives puissent être placées dans + chacune de ces sections, certaines d'entre elles n'ont aucun sens + dans certains contextes. + Par exemple, les directives qui contrôlent la création des processus + n'ont de sens que dans le contexte du serveur principal. Pour déterminer + quelles directives peuvent être placées dans quelles sections, consultez + le Contexte de la + directive. Pour plus d'informations, nous fournissons des détails dans + Comment fonctionnent les sections Directory, + Location et Files.

+
top
+
+

Fichiers .htaccess

+ + + + +

Apache permet la gestion décentralisée de la configuration + via des fichiers spéciaux placés dans l'arborescence du site web. + Ces fichiers spéciaux se nomment en général .htaccess, + mais tout autre nom peut être spécifié à l'aide de la directive + AccessFileName. + Les directives placées dans les fichiers .htaccess + s'appliquent au répertoire dans lequel vous avez placé le fichier, + ainsi qu'à tous ses sous-répertoires. + La syntaxe des fichiers .htaccess est la même que celle + des fichiers de configuration principaux. Comme les fichiers + .htaccess sont lus à chaque requête, les modifications de + ces fichiers prennent effet immédiatement.

+ +

Pour déterminer quelles directives peuvent être placées + dans les fichiers .htaccess, consultez le + Contexte de la + directive. L'administrateur du serveur peut contrôler quelles + directives peuvent être placées dans les fichiers + .htaccess en définissant la directive + AllowOverride + dans les fichiers de configuration principaux.

+ +

Pour plus d'informations sur les fichiers .htaccess, + se référer au tutoriel .htaccess.

+
+
+

Langues Disponibles:  de  | + en  | + fr  | + ja  | + ko 

+
+ \ No newline at end of file diff --git a/docs/manual/configuring.xml.fr b/docs/manual/configuring.xml.fr new file mode 100644 index 00000000000..729770f1424 --- /dev/null +++ b/docs/manual/configuring.xml.fr @@ -0,0 +1,215 @@ + + + + + + + + + + + + + Fichiers de configuration + + +

Ce document décrit les fichiers utilisés pour configurer +le Serveur HTTP Apache.

+
+ +
+ Fichiers de configuration principaux + + + mod_mime + + + IfDefine + Include + TypesConfig + + + +

La configuration d'Apache est effectuée en plaçant des directives dans des fichiers de + configuration au format texte. Le fichier de configuration principal se nomme + en général + httpd.conf. La localisation de ce fichier est définie + à la compilation, mais peut être redéfinie à l'aide de l'option + de ligne de commande -f. En outre, d'autres fichiers de + configuration peuvent être ajoutés à l'aide de la directive + Include, et des caractères de + remplacement + peuvent être utilisés pour inclure de nombreux fichiers de configuration. + Des directives de tous types peuvent être placées dans chacun de ces fichiers + de configuration. Les modifications dans les fichiers de configuration + principaux ne sont prises en compte par Apache que lorsque le serveur + est démarré ou redémarré.

+ +

Le serveur lit aussi un fichier contenant les types de document mime; + ce fichier est défini par la directive TypesConfig, + et se nomme mime.types par défaut.

+
+ +
+ Syntaxe des fichiers de configuration + +

Les fichiers de configuration d'Apache contiennent une directive + par ligne. + On peut utiliser l'anti-slash "\" comme dernier caractère d'une ligne + pour indiquer que la directive continue à la ligne suivante. + Il ne doit y avoir aucun caractère ni espace entre l'anti-slash et + la fin de la ligne.

+ +

Les directives dans les fichiers de configuration ne sont pas + sensibles à la casse, mais leurs arguments le sont souvent. Les lignes + qui débutent par le caractère "#" sont interprétées comme des + commentaires, et sont ignorées. Les commentaires ne doivent + pas être inclus dans une ligne après une directive + de configuration. Les lignes vides et les espaces précédant une directive + sont ignorés; vous pouvez par conséquent indenter les directives + afin d'améliorer la lisibilité.

+ +

Vous pouvez vérifier l'absence d'erreurs de syntaxe dans vos fichiers + de configuration sans démarrer le serveur à l'aide de la commande + apachectl configtest ou de l'option de ligne de commande + -t.

+
+ +
+ Modules + + + + mod_so + + + IfModule + LoadModule + + + +

Apache est un serveur modulaire. Ceci implique que seules les + fonctionnalités les plus courantes sont incluses dans le serveur de base. + Les fonctionnalités étendues sont fournies à l'aide de modules qui peuvent être chargés dans Apache. + Par défaut, un jeu de modules de base est inclus dans le + serveur à la compilation. Si le serveur est compilé de façon à utiliser + les modules chargés dynamiquement, + alors les modules peuvent être compilés séparément et chargés à + n'importe quel moment à l'aide de la directive + LoadModule. + Dans le cas contraire, Apache doit être recompilé pour ajouter ou + supprimer des modules. + Les directives de configuration peuvent être incluses de manière + conditionnelle selon la présence ou l'absence d'un module particulier + en les plaçant dans un bloc IfModule.

+ +

Pour voir quels modules ont été compilés avec le serveur, + vous pouvez utiliser l'option de ligne de commande -l.

+
+ +
+ Portée des directives + + + + Directory + DirectoryMatch + Files + FilesMatch + Location + LocationMatch + VirtualHost + + + +

Les directives placées dans les fichiers de configuration principaux + s'appliquent au serveur dans son ensemble. Si vous souhaitez modifier la + configuration d'une partie du serveur seulement, vous pouvez limiter la + portée de vos directives en les plaçant dans une section + Directory, DirectoryMatch, Files, FilesMatch, Location, ou LocationMatch. + Ces sections limitent le champ d'application des directives qu'elles + contiennent à des URls ou des portions du système de fichiers particulières. + Elles peuvent aussi être imbriquées, ce qui permet + une configuration très fine.

+ +

Apache peut servir simultanément de nombreux sites web au travers des + Hôtes Virtuels. La portée des directives peut ainsi + être limitée en les plaçant dans des sections + VirtualHost, + afin qu'elles ne s'appliquent qu'aux requêtes + pour un site web particulier.

+ +

Bien que la plupart des directives puissent être placées dans + chacune de ces sections, certaines d'entre elles n'ont aucun sens + dans certains contextes. + Par exemple, les directives qui contrôlent la création des processus + n'ont de sens que dans le contexte du serveur principal. Pour déterminer + quelles directives peuvent être placées dans quelles sections, consultez + le Contexte de la + directive. Pour plus d'informations, nous fournissons des détails dans + Comment fonctionnent les sections Directory, + Location et Files.

+
+ +
+ Fichiers .htaccess + + + + AccessFileName + AllowOverride + + + +

Apache permet la gestion décentralisée de la configuration + via des fichiers spéciaux placés dans l'arborescence du site web. + Ces fichiers spéciaux se nomment en général .htaccess, + mais tout autre nom peut être spécifié à l'aide de la directive + AccessFileName. + Les directives placées dans les fichiers .htaccess + s'appliquent au répertoire dans lequel vous avez placé le fichier, + ainsi qu'à tous ses sous-répertoires. + La syntaxe des fichiers .htaccess est la même que celle + des fichiers de configuration principaux. Comme les fichiers + .htaccess sont lus à chaque requête, les modifications de + ces fichiers prennent effet immédiatement.

+ +

Pour déterminer quelles directives peuvent être placées + dans les fichiers .htaccess, consultez le + Contexte de la + directive. L'administrateur du serveur peut contrôler quelles + directives peuvent être placées dans les fichiers + .htaccess en définissant la directive + AllowOverride + dans les fichiers de configuration principaux.

+ +

Pour plus d'informations sur les fichiers .htaccess, + se référer au tutoriel .htaccess.

+
+
diff --git a/docs/manual/configuring.xml.meta b/docs/manual/configuring.xml.meta index 201286fae56..619bd975104 100644 --- a/docs/manual/configuring.xml.meta +++ b/docs/manual/configuring.xml.meta @@ -8,6 +8,7 @@ de en + fr ja ko diff --git a/docs/manual/content-negotiation.html b/docs/manual/content-negotiation.html index 3fbf5ee048d..02319b8db62 100644 --- a/docs/manual/content-negotiation.html +++ b/docs/manual/content-negotiation.html @@ -2,6 +2,10 @@ URI: content-negotiation.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 +URI: content-negotiation.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 + URI: content-negotiation.html.ja.euc-jp Content-Language: ja Content-type: text/html; charset=EUC-JP diff --git a/docs/manual/content-negotiation.html.en b/docs/manual/content-negotiation.html.en index 7f4a7e9976d..873d871ced8 100644 --- a/docs/manual/content-negotiation.html.en +++ b/docs/manual/content-negotiation.html.en @@ -19,8 +19,9 @@ Apache > HTTP Server > Documentation > Version 2.2

Content Negotiation

Available Languages:  en  | - ja  | - ko 

+ fr  | + ja  | + ko 

@@ -671,8 +672,9 @@ factors to 5 decimal places before choosing the best variant.

Available Languages:  en  | - ja  | - ko 

+ fr  | + ja  | + ko 

diff --git a/docs/manual/content-negotiation.html.fr b/docs/manual/content-negotiation.html.fr new file mode 100644 index 00000000000..4bab1bc5354 --- /dev/null +++ b/docs/manual/content-negotiation.html.fr @@ -0,0 +1,705 @@ + + + +Négociation de contenu - Serveur Apache HTTP + + + + + +
<-
+

Négociation de contenu

+
+

Langues Disponibles:  en  | + fr  | + ja  | + ko 

+
+ + +

Apache supporte la négociation de contenu telle qu'elle est décrite + dans la spécification HTTP/1.1. Il peut choisir la meilleure représentation + d'une ressource en fonction des préférences du navigateur pour ce qui + concerne le type de media, les langages, le jeu de caractères et son + encodage. Il implémente aussi quelques fonctionnalités pour traiter de + manière plus intelligente les requêtes en provenance de navigateurs qui + envoient des informations de négociation incomplètes.

+ +

La négociation de contenu est assurée par le module + mod_negotiation qui est compilé par défaut + dans le serveur.

+
+ +
top
+
+

À propos de la négociation de contenu

+ +

Une ressource peut être disponible selon différentes représentations. + Par exemple, elle peut être disponible en différents langages ou pour + différents types de média, ou une combinaison des deux. + Pour faire le meilleur choix, on peut fournir à l'utilisateur une page + d'index, et le laisser choisir. Cependant, le serveur peut souvent faire + ce choix automatiquement. Ceci est possible car les navigateurs peuvent + envoyer des informations sur les + représentations qu'ils préfèrent à l'intérieur de chaque requête. + Par exemple, un navigateur peut indiquer + qu'il préfère voir les informations en français, mais qu'en cas + d'impossibilité l'anglais peut convenir. Les navigateurs indiquent leurs + préférences à l'aide d'en-têtes dans la requête. Pour ne demander que des + représentations en français, le navigateur peut utiliser l'en-tête :

+ +

Accept-Language: fr

+ +

Notez qu'il ne sera tenu compte de cette préférence que s'il existe un + choix de représentations et que ces dernières varient en fonction + du langage.

+ +

À titre d'exemple d'une requête plus complexe, ce navigateur a été + configuré pour accepter le français et l'anglais, avec une préférence pour + le français, et accepter différents types de média, avec une préférence + pour HTML par rapport au texte plat (plain text) ou autres types de fichiers texte, et + avec une préférence pour GIF ou JPEG par rapport à tout autre type de + média, mais autorisant tout autre type de média en dernier ressort :

+ +

+ Accept-Language: fr; q=1.0, en; q=0.5
+ Accept: text/html; q=1.0, text/*; q=0.8, image/gif; q=0.6, image/jpeg; q=0.6, image/*; q=0.5, */*; q=0.1 +

+ +

Apache supporte la négociation de contenu "server driven" (telle qu'elle + est définie dans la spécification HTTP/1.1), où c'est le serveur qui + décide quelle est la meilleure représentation à retourner pour la ressource + demandée. Il supporte entièrement les en-têtes de requête + Accept, Accept-Language, + Accept-Charset et Accept-Encoding. + Apache supporte aussi la négociation de contenu transparente, qui est un + protocole de négociation expérimental défini dans les RFC 2295 et 2296. + Il ne supporte pas la négociation de fonctionnalité (feature negotiation) + telle qu'elle est définie dans ces RFCs.

+ +

Une ressource est une entité conceptuelle identifiée + par une URI (RFC 2396). Un serveur HTTP comme Apache propose l'accès à des + représentations de la ressource à l'intérieur de son + espace de nommage, chaque représentation étant composée d'une séquence + d'octets avec la définition d'un type de media, d'un jeu de caractères, + d'un encodage, etc... A un instant donné, chaque ressource peut être + associée avec zéro, une ou plusieurs représentations. Si plusieurs + représentations sont disponibles, la ressource est qualifiée de + négociable et chacune de ses représentations se nomme + variante. Les différences entre les + variantes disponibles d'une ressource négociable constituent les + dimensions de la négociation.

+
top
+
+

La négociation avec Apache

+ +

Afin de négocier une ressource, on doit fournir au serveur des + informations à propos de chacune des variantes. Il y a deux manières + d'accomplir ceci :

+ +
    +
  • Utiliser une liste de correspondances de types ("type-map") (c'est à dire + un fichier *.var) qui nomme explicitement les fichiers + contenant les variantes, ou
  • + +
  • Utiliser une recherche "multivues", où le serveur effectue une + recherche de correspondance sur un motif de nom de fichier implicite et + fait son choix parmi les différents résultats.
  • +
+ +

Utilisation d'un fichier de + correspondances de types (type-map)

+ +

Une liste de correspondances de types est un document associé au + gestionnaire type-map (ou, dans un souci de compatibilité + ascendante avec des configurations d'Apache plus anciennes, le + type MIME + application/x-type-map). Notez que pour utiliser cette + fonctionnalité, vous devez, dans le fichier de configuration, définir un + gestionnaire qui associe un suffixe de fichier à une type-map; + ce qui se fait simplement en ajoutant

+ +

AddHandler type-map .var

+ +

dans le fichier de configuration du serveur.

+ +

Les fichiers de correspondances de types doivent posséder le même nom que + la ressource qu'ils décrivent, et comporter une entrée pour chaque variante + disponible; chaque entrée consiste en une ligne contiguë d'en-têtes au + format HTTP. les entrées sont séparées par des lignes vides. Les lignes + vides à l'intérieur d'une entrée sont interdites. Par convention, le + fichier de correspondances débute par une entrée concernant l'entité + considérée dans son ensemble (bien que ce ne soit pas obligatoire, et + ignoré si présent). Un exemple de fichier de correspondance est fourni + ci-dessous. + Ce fichier doit être nommé foo.var, car il décrit une + ressource nommée foo.

+ +

+ URI: foo
+
+ URI: foo.en.html
+ Content-type: text/html
+ Content-language: en
+
+ URI: foo.fr.de.html
+ Content-type: text/html;charset=iso-8859-2
+ Content-language: fr, de
+

+

Notez aussi qu'un fichier de correspondances de types prend le pas sur + les extensions de noms de fichiers, même si les Multivues sont activées. + Si les variantes sont de qualités différentes, on doit l'indiquer + à l'aide du paramètre "qs" à la suite du type de média, comme pour cette + image + (disponible aux formats JPEG, GIF, ou ASCII-art) :

+ +

+ URI: foo
+
+ URI: foo.jpeg
+ Content-type: image/jpeg; qs=0.8
+
+ URI: foo.gif
+ Content-type: image/gif; qs=0.5
+
+ URI: foo.txt
+ Content-type: text/plain; qs=0.01
+

+ +

Les valeurs de qs peuvent varier de 0.000 à 1.000. Notez que toute + variante possédant une valeur de qs de 0.000 ne sera jamais choisie. + Les variantes qui n'ont pas de paramètre qs défini se voient attribuer + une valeur de 1.0. Le paramètre qs indique la qualité relative de la + variante comparée à celle des autres variantes disponibles, sans tenir + compte des capacités du client. Par exemple, un fichier JPEG possède + en général une qualité supérieure à celle d'un fichier ASCII s'il + représente une photographie. Cependant, si la ressource représentée est + à un ASCII art original, la représentation ASCII sera de meilleure qualité + que la représentation JPEG. Ainsi une valeur de qs est associée à une + variante en fonction de la nature de la ressource qu'elle représente.

+ +

La liste complète des en-têtes reconnus est disponible dans la + documentation de la directive + typemap (module mod_negotiation).

+ + +

Multivues (option Multiviews)

+ +

MultiViews est une option qui s'applique à un répertoire, + ce qui signifie qu'elle peut être activée à l'aide d'une directive + Options à l'intérieur d'une section + <Directory>, <Location> ou <Files> dans + httpd.conf, ou (si AllowOverride est correctement positionnée) dans + des fichiers + .htaccess. Notez que Options All + n'active pas MultiViews; vous devez activer cette option en + la nommant explicitement.

+ +

L'effet de MultiViews est le suivant : si le serveur reçoit + une requête pour /tel/répertoire/foo, si + MultiViews est activée pour + /tel/répertoire, et si + /tel/répertoire/foo n'existe pas, le serveur parcourt + le répertoire à la recherche de fichiers nommés foo.*, et génère + une correspondance de types (type map) qui liste tous ces + fichiers, en leur associant les mêmes types de média et encodages de + contenu qu'ils auraient eu si le client avait demandé l'accès à l'un + d'entre eux par son nom. Il choisit ensuite ce qui correspond le mieux + aux besoins du client.

+ +

MultiViews peut aussi s'appliquer à la recherche du fichier + nommé par la directive DirectoryIndex, si le serveur tente d'indexer + un répertoire. Si les fichiers de configuration spécifient

+

DirectoryIndex index

+

le serveur va choisir entre index.html + et index.html3 si les deux fichiers sont présents. Si aucun + n'est présent, mais index.cgi existe, + le serveur l'exécutera.

+ +

Si, parcequ'elle n'est pas reconnue par mod_mime, + l'extension d'un des fichiers du répertoire ne permet pas de + déterminer son jeu de caractères, son type de contenu, son langage, ou son + encodage, alors + le résultat dépendra de la définition de la directive MultiViewsMatch. Cette directive détermine + si les gestionnaires (handlers), les filtres, et autres types d'extensions + peuvent participer à la négociation MultiVues.

+ +
top
+
+

Les méthodes de négociation

+ +

Une fois obtenue la liste des variantes pour une ressource donnée, + Apache dispose de deux méthodes pour choisir la meilleure variante à + retourner, s'il y a lieu, soit à partir d'un fichier de + correspondances de types, soit en se basant sur les noms de fichiers du + répertoire. Il n'est pas nécessaire de connaître en détails comment la + négociation fonctionne réellement pour pouvoir utiliser les fonctionnalités + de négociation de contenu d'Apache. La suite de ce document explique + cependant les méthodes utilisées pour ceux ou celles qui sont + intéressés(ées).

+ +

Il existe deux méthodes de négociation :

+ +
    +
  1. La négociation effectuée par le serveur selon l'algorithme + d'Apache est normalement utilisée. l'algorithme d'Apache est + expliqué plus en détails ci-dessous. Quand cet algorithme est utilisé, + Apache peut parfois "bricoler" le facteur de qualité (qs) d'une dimension + particulière afin d'obtenir un meilleur résultat. + La manière dont Apache peut modifier les facteurs de qualité est + expliquée plus en détails ci-dessous.
  2. + +
  3. La négociation de contenu transparente est utilisée + quand le navigateur le demande explicitement selon le mécanisme défini + dans la RFC 2295. Cette méthode de négociation donne au navigateur le + contrôle total du choix de la meilleure variante; le résultat dépend + cependant de la spécificité des algorithmes utilisés par le navigateur. + Au cours du processus de négociation transparente, le navigateur peut + demander à Apache d'exécuter l'"algorithme de sélection de variante à + distance" défini dans la RFC 2296.
  4. +
+ +

Les dimensions de la négociation

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DimensionNotes
Type de médiaLe navigateur affiche ses préférences à l'aide du champ d'en-tête + Accept. Chaque type de média peut se voir associé un facteur de + qualité. La description de la variante peut aussi avoir un facteur de + qualité (le paramètre "qs").
LangageLe navigateur affiche ses préférences à l'aide du champ d'en-tête + Accept-Language. Chaque langue peut se voir associée un facteur de + qualité. Les variantes peuvent être associées avec zéro, un ou + plusieurs langages.
EncodingLe navigateur affiche ses préférences à l'aide du champ d'en-tête + Accept-Encoding. Chaque encodage peut se voir associé un facteur de + qualité.
CharsetLe navigateur affiche ses préférences à l'aide du champ d'en-tête + Accept-Charset. Chaque jeu de caractères peut se voir associé un facteur de + qualité. Les variantes peuvent préciser un jeu de caractères comme + paramètre du type de média.
+ + +

L'algorithme de négociation d'Apache

+ +

Apache peut utiliser l'algorithme suivant pour choisir la "meilleure" + variante (s'il y en a une) à retourner au navigateur. Cet algorithme n'est pas + configurable. Il fonctionne comme suit :

+ +
    +
  1. En premier lieu, pour chaque dimension de la négociation, consulter + le champ d'en-tête Accept* approprié et assigner une qualité à + chaque variante. Si l'en-tête Accept* pour toute dimension + implique que la variante n'est pas acceptable, éliminer cette dernière. + S'il ne reste plus de variante, aller à l'étape 4.
  2. + +
  3. + Choisir la "meilleure" variante par élimination. Chacun des tests + suivants est effectué dans cet ordre. Toute variante non sélectionnée + à l'issue d'un test est éliminée. Après chaque test, s'il reste une + seule variante, choisir cette dernière comme celle qui correspond le + mieux puis aller à l'étape 3. S'il reste plusieurs variantes, passer + au test suivant. + +
      +
    1. Multiplier le facteur de qualité de l'en-tête + Accept par le facteur de qualité "qs" pour le type de + média de ces variantes, et choisir la variante qui possède la valeur + la plus importante.
    2. + +
    3. Sélectionner les variantes qui possèdent le facteur de qualité + de langage le plus haut.
    4. + +
    5. Sélectionner les variantes dont le langage correspond le mieux, + en se basant sur l'ordre des langages de l'en-tête + Accept-Language (s'il existe), ou de la directive + LanguagePriority (si elle existe).
    6. + +
    7. Sélectionner les variantes possédant le paramètre de média + "level" le plus élevé (utilisé pour préciser la version des types de + média text/html).
    8. + +
    9. Sélectionner les variantes possédant le paramètre de média + "charset" (jeu de caractères) qui correspond le mieux, en se basant + sur la ligne d'en-tête Accept-Charset . Le jeu de + caractères ISO-8859-1 est acceptable sauf s'il est explicitement + exclus. Les variantes avec un type de média text/* + mais non explicitement associées avec un jeu de caractères + particulier sont supposées être en ISO-8859-1.
    10. + +
    11. Sélectionner les variantes dont le paramètre de média "charset" + associé n'est pas ISO-8859-1. S'il n'en existe pas, + sélectionner toutes les variantes.
    12. + +
    13. Sélectionner les variantes avec le meilleur encodage. S'il existe + des variantes avec un encodage acceptable pour le client, + sélectionner celles-ci. Sinon, s'il existe des variantes encodées et + des variantes non encodées, ne sélectionner que les variantes non + encodées. Si toutes les variantes sont encodées ou si aucune + ne l'est, sélectionner toutes les variantes.
    14. + +
    15. Sélectionner les variantes dont le contenu a la longueur + la plus courte.
    16. + +
    17. Sélectionner la première des variantes restantes. Il s'agira + soit de la première variante listée dans le fichier de + correspondances de types, soit, quand les variantes sont lues depuis + le répertoire, la première par ordre alphabétique quand elles sont + triées selon le code ASCII.
    18. +
    +
  4. + +
  5. L'algorithme a maintenant sélectionné une variante considérée comme + la "meilleure", il la retourne donc au client en guise de réponse. + L'en-tête HTTP Vary de la réponse est renseigné de façon à + indiquer les dimensions de la négociation (les navigateurs et les caches + peuvent utiliser cette information lors de la mise en cache de la + ressource). Travail terminé.
  6. + +
  7. Le passage par cette étape signifie qu'aucune variante n'a été + sélectionnée (parce qu'aucune n'est acceptable pour le client HTTP). + Envoyer une réponse avec un code de statut 406 (qui signifie "Aucune + représentation acceptable") et un corps comportant un document HTML qui + affiche les variantes disponibles. Renseigner aussi l'en-tête HTTP + Vary de façon à indiquer les dimensions de la variante.
  8. +
+ +
top
+
+

Ajustement des valeurs de qualité

+ +

Parfois Apache modifie les valeurs de qualité par rapport à celles qui + découleraient d'une stricte interprétation de l'algorithme de négociation + d'Apache ci-dessus, ceci pour améliorer les résultats de l'algorithme pour + les navigateurs qui envoient des informations incomplètes ou inappropriées. + Certains des navigateurs les plus populaires envoient des informations dans + l'en-tête Accept qui, sans ce traitement, provoqueraient la + sélection d'une variante inappropriée dans de nombreux cas. Quand un + navigateur envoie des informations complètes et correctes ces ajustements + ne sont pas effectués.

+ +

Types de média et caractères génériques

+ +

L'en-tête de requête Accept: indique les types de média + souhaités. Il peut aussi contenir des types de média avec caractères + génériques, comme "image/*" ou "*/*" où * correspond à n'importe quelle + chaîne de caractères. Ainsi une requête contenant :

+ +

Accept: image/*, */*

+ +

indiquerait que tout type de média est acceptable, avec une préférence + pour les types commençant par "image/". + Certains navigateurs ajoutent par défaut des types de média avec caractères + génériques aux types explicitement nommés qu'ils peuvent gérer. + Par exemple :

+ +

+ Accept: text/html, text/plain, image/gif, image/jpeg, */* +

+

Ceci indique que les types explicitement listés sont préférés, mais + qu'une représentation avec un type différent de ces derniers conviendra + aussi. Les valeurs de qualités explicites, + afin de préciser ce que veut vraiment le navigateur, s'utilisent + comme suit :

+

+ Accept: text/html, text/plain, image/gif, image/jpeg, */*; q=0.01 +

+

Les types explicites n'ont pas de facteur de qualité, la valeur par + défaut de leur préférence est donc de 1.0 (la plus haute). Le type avec + caractères génériques */* se voit attribuer une préférence basse de 0.01, + si bien que les types autres que ceux explicitement listés ne seront retournés + que s'il n'existe pas de variante correspondant à un type explicitement + listé.

+ +

Si l'en-tête Accept: ne contient pas aucun + facteur de qualité, Apache positionne la valeur de qualité de + "*/*", si present, à 0.01 pour simuler l'effet désiré. Il positionne aussi + la valeur de qualité des types avec caractères génériques au format + "type/*" à 0.02 (ils sont donc préférés à ceux correspondant à "*/*"). Si + un type de média dans l'en-tête Accept: contient un facteur de + qualité, ces valeurs spéciales ne seront pas appliquées, de façon + à ce que les requêtes de navigateurs qui envoient les informations + explicites à prendre en compte fonctionnent comme souhaité.

+ + +

Exceptions dans la négociation du +langage

+ +

A partir de la version 2.0 d'Apache, certaines exceptions ont été + ajoutées à l'algorithme de négociation afin de ménager une issue de secours + quand la négociation ne trouve aucun langage correspondant.

+ +

Quand un client demande une page sur votre serveur, si ce dernier ne + parvient pas à trouver une page dont la langue corresponde à l'en-tête + Accept-language envoyé par le navigateur, il enverra au client + une réponse "Aucune variante acceptable" ou "Plusieurs choix possibles". + Pour éviter ces + messages d'erreur, il est possible de configurer Apache de façon à ce que, + dans ces cas, il ignore l'en-tête Accept-language et fournisse + tout de même un document, même s'il ne correspond pas exactement à la + demande explicite du client. La directive ForceLanguagePriority + peut être utilisée pour éviter ces messages d'erreur et leur substituer une + page dont le langage sera déterminé en fonction du contenu de la directive + LanguagePriority.

+ +

Le serveur va aussi essayer d'étendre sa recherche de correspondance aux + sous-ensembles de langages quand aucune correspondance exacte ne peut être + trouvée. Par exemple, si un client demande des documents possédant le + langage en-GB, c'est à dire anglais britannique, le standard + HTTP/1.1 n'autorise normalement pas le serveur à faire correspondre cette + demande à un document dont le langage est simplement en. + (Notez qu'inclure en-GB et non en dans l'en-tête + Accept-Language constitue une quasi-erreur de configuration, + car il est très peu probable qu'un lecteur qui comprend l'anglais + britannique, ne comprenne pas l'anglais en général. Malheureusement, de + nombreux clients ont réellement des configurations par défaut de ce type.) + Cependant, si aucune autre correspondance de langage n'est possible, et que le + serveur est sur le point de retourner une erreur "Aucune variable + acceptable" ou de choisir le langage défini par la directive LanguagePriority, le serveur ignorera + la spécification du sous-ensemble de langage et associera la demande en + en-GB à des documents en en. Implicitement, + Apache ajoute le langage parent à la liste de langues acceptées par le + client avec une valeur de qualité très basse. Notez cependant que si le + client demande "en-GB; q=0.9, fr; q=0.8", et le serveur dispose de + documents estampillés "en" et "fr", alors c'est le document "fr" qui sera + retourné, tout ceci dans un souci de compatibilité avec la spécification + HTTP/1.1 et afin de fonctionner efficacement avec les clients + correctement configurés.

+ +

Pour supporter les techniques avancées (comme les cookies ou les chemins + d'URL spéciaux) afin de déterminer le langage préféré de l'utilisateur, le + module mod_negotiation reconnaît la + variable d'environnement + prefer-language + depuis la version 2.0.47 d'Apache. Si elle est définie et contient un + symbole de langage approprié, mod_negotiation va essayer + de sélectionner une variante correspondante. S'il n'existe pas de telle + variante, le processus normal de négociation sera lancé.

+ +

Exemple

+ SetEnvIf Cookie "language=(.+)" prefer-language=$1 + Header append Vary cookie +

+ +
top
+
+

Extensions à la négociation de contenu +transparente

+ +

Apache étend le protocole de négociation de contenu transparente (RFC +2295) comme suit. Un nouvel élément {encodage ..} est utilisé dans +les listes de variantes pour marquer celles qui ne sont disponibles qu'avec un +encodage de contenu spécifique. L'implémentation de l'algorithme +RVSA/1.0 (RFC 2296) est étendue à la reconnaissance de variantes encodées dans +la liste, et à leur utilisation en tant que variantes candidates à partir du +moment où leur encodage satisfait au contenu de l'en-tête de requête +Accept-Encoding. L'implémentation RVSA/1.0 n'arrondit pas les +facteurs de qualité calculés à 5 décimales avant d'avoir choisi la meilleure +variante.

+
top
+
+

Remarques à propos des liens hypertextes et des +conventions de nommage

+ +

Si vous utilisez la négociation de langage, vous avez le choix entre + différentes conventions de nommage, car les fichiers peuvent posséder + plusieurs extensions, et l'ordre dans lequel ces dernières apparaissent + est en général sans rapport (voir la documentation sur le module mod_mime + pour plus de détails).

+ +

Un fichier type possède une extension liée au type MIME + (par exemple, html), mais parfois aussi une + extension liée à l'encodage (par exemple, gz), + et bien sûr une extension liée au langage + (par exemple, en) quand plusieurs variantes de + langage sont disponibles pour ce fichier.

+ +

Exemples :

+ +
    +
  • foo.en.html
  • + +
  • foo.html.en
  • + +
  • foo.en.html.gz
  • +
+ +

Ci-dessous d'autres exemples de noms de fichiers avec des liens + hypertextes valides et invalides :

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Nom fichierlien valideLien invalide
foo.html.enfoo
+ foo.html
-
foo.en.htmlfoofoo.html
foo.html.en.gzfoo
+ foo.html
foo.gz
+ foo.html.gz
foo.en.html.gzfoofoo.html
+ foo.html.gz
+ foo.gz
foo.gz.html.enfoo
+ foo.gz
+ foo.gz.html
foo.html
foo.html.gz.enfoo
+ foo.html
+ foo.html.gz
foo.gz
+ +

En regardant la table ci-dessus, vous remarquerez qu'il est toujours + possible d'utiliser le nom de fichier sans extension dans un lien + (par exemple, foo). L'avantage est de pouvoir + dissimuler le type réel du fichier associé à un document et de pouvoir + le modifier + ultérieurement, par exemple, de html à + shtml ou cgi sans avoir à + mettre à jour aucun lien.

+ +

Si vous souhaitez continuer à utiliser un type MIME dans vos liens + (par exemple foo.html), l'extension liée au langage + (y compris une extension liée à l'encodage s'il en existe une) + doit se trouver à droite de l'extension liée au type MIME + (par exemple, foo.html.en).

+
top
+
+

Remarque sur la mise en cache

+ +

Quand un cache stocke une représentation, il l'associe avec l'URL de la + requête. Lorsque cette URL est à nouveau demandée, le cache peut utiliser + la représentation stockée. Cependant, si la ressource est négociable au + niveau du serveur, il se peut que seule la première variante demandée soit + mise en cache et de ce fait, la correspondance positive du cache peut + entraîner une réponse inappropriée. Pour éviter ceci, Apache marque par + défaut toutes les réponses qui sont retournées après une négociation de + contenu comme "non-cachables" par les clients HTTP/1.0. Apache supporte + aussi les fonctionnalités du protocole HTTP/1.1 afin de permettre la mise + en cache des réponses négociées.

+ +

Pour les requêtes en provenance d'un client compatible HTTP/1.0 + (un navigateur ou un cache), la directive CacheNegotiatedDocs peut être utilisée + pour permettre la mise en cache des réponses qui ont fait l'objet d'une + négociation. Cette directive peut intervenir dans la configuration au + niveau du serveur ou de l'hôte virtuel, et n'accepte aucun argument. Elle + n'a aucun effet sur les requêtes en provenance de clients HTTP/1.1.

+ +

Pour les clients HTTP/1.1, Apache envoie un en-tête de réponse HTTP + Vary afin d'indiquer les dimensions de la négociation pour + cette réponse. Les caches peuvent + utiliser cette information afin de déterminer + si une requête peut être servie à partir de la copie locale. Pour inciter + un cache à utiliser la copie locale sans tenir compte des dimensions de la + négociation, définissez la + variable d'environnement + force-no-vary.

+ +
top
+
+

Pour plus d'informations

+ +

Pour plus d'informations à propos de la négociation de contenu, voir le + document d'Alan J. Flavell Language + Negotiation Notes. Mais gardez à l'esprit que ce document ne tiendra + peut-être pas compte des changements intervenus dans Apache 2.0.

+
+
+

Langues Disponibles:  en  | + fr  | + ja  | + ko 

+
+ \ No newline at end of file diff --git a/docs/manual/content-negotiation.xml.fr b/docs/manual/content-negotiation.xml.fr new file mode 100644 index 00000000000..29521c8397c --- /dev/null +++ b/docs/manual/content-negotiation.xml.fr @@ -0,0 +1,703 @@ + + + + + + + + + + + + +Négociation de contenu + + + +

Apache supporte la négociation de contenu telle qu'elle est décrite + dans la spécification HTTP/1.1. Il peut choisir la meilleure représentation + d'une ressource en fonction des préférences du navigateur pour ce qui + concerne le type de media, les langages, le jeu de caractères et son + encodage. Il implémente aussi quelques fonctionnalités pour traiter de + manière plus intelligente les requêtes en provenance de navigateurs qui + envoient des informations de négociation incomplètes.

+ +

La négociation de contenu est assurée par le module + mod_negotiation qui est compilé par défaut + dans le serveur.

+
+ +
À propos de la négociation de contenu + +

Une ressource peut être disponible selon différentes représentations. + Par exemple, elle peut être disponible en différents langages ou pour + différents types de média, ou une combinaison des deux. + Pour faire le meilleur choix, on peut fournir à l'utilisateur une page + d'index, et le laisser choisir. Cependant, le serveur peut souvent faire + ce choix automatiquement. Ceci est possible car les navigateurs peuvent + envoyer des informations sur les + représentations qu'ils préfèrent à l'intérieur de chaque requête. + Par exemple, un navigateur peut indiquer + qu'il préfère voir les informations en français, mais qu'en cas + d'impossibilité l'anglais peut convenir. Les navigateurs indiquent leurs + préférences à l'aide d'en-têtes dans la requête. Pour ne demander que des + représentations en français, le navigateur peut utiliser l'en-tête :

+ +Accept-Language: fr + +

Notez qu'il ne sera tenu compte de cette préférence que s'il existe un + choix de représentations et que ces dernières varient en fonction + du langage.

+ +

À titre d'exemple d'une requête plus complexe, ce navigateur a été + configuré pour accepter le français et l'anglais, avec une préférence pour + le français, et accepter différents types de média, avec une préférence + pour HTML par rapport au texte plat (plain text) ou autres types de fichiers texte, et + avec une préférence pour GIF ou JPEG par rapport à tout autre type de + média, mais autorisant tout autre type de média en dernier ressort :

+ + + Accept-Language: fr; q=1.0, en; q=0.5
+ Accept: text/html; q=1.0, text/*; q=0.8, image/gif; q=0.6, image/jpeg; q=0.6, image/*; q=0.5, */*; q=0.1 +
+ +

Apache supporte la négociation de contenu "server driven" (telle qu'elle + est définie dans la spécification HTTP/1.1), où c'est le serveur qui + décide quelle est la meilleure représentation à retourner pour la ressource + demandée. Il supporte entièrement les en-têtes de requête + Accept, Accept-Language, + Accept-Charset et Accept-Encoding. + Apache supporte aussi la négociation de contenu transparente, qui est un + protocole de négociation expérimental défini dans les RFC 2295 et 2296. + Il ne supporte pas la négociation de fonctionnalité (feature negotiation) + telle qu'elle est définie dans ces RFCs.

+ +

Une ressource est une entité conceptuelle identifiée + par une URI (RFC 2396). Un serveur HTTP comme Apache propose l'accès à des + représentations de la ressource à l'intérieur de son + espace de nommage, chaque représentation étant composée d'une séquence + d'octets avec la définition d'un type de media, d'un jeu de caractères, + d'un encodage, etc... A un instant donné, chaque ressource peut être + associée avec zéro, une ou plusieurs représentations. Si plusieurs + représentations sont disponibles, la ressource est qualifiée de + négociable et chacune de ses représentations se nomme + variante. Les différences entre les + variantes disponibles d'une ressource négociable constituent les + dimensions de la négociation.

+
+ +
La négociation avec Apache + +

Afin de négocier une ressource, on doit fournir au serveur des + informations à propos de chacune des variantes. Il y a deux manières + d'accomplir ceci :

+ +
    +
  • Utiliser une liste de correspondances de types ("type-map") (c'est à dire + un fichier *.var) qui nomme explicitement les fichiers + contenant les variantes, ou
  • + +
  • Utiliser une recherche "multivues", où le serveur effectue une + recherche de correspondance sur un motif de nom de fichier implicite et + fait son choix parmi les différents résultats.
  • +
+ +
Utilisation d'un fichier de + correspondances de types (type-map) + +

Une liste de correspondances de types est un document associé au + gestionnaire type-map (ou, dans un souci de compatibilité + ascendante avec des configurations d'Apache plus anciennes, le + type MIME + application/x-type-map). Notez que pour utiliser cette + fonctionnalité, vous devez, dans le fichier de configuration, définir un + gestionnaire qui associe un suffixe de fichier à une type-map; + ce qui se fait simplement en ajoutant

+ +AddHandler type-map .var + +

dans le fichier de configuration du serveur.

+ +

Les fichiers de correspondances de types doivent posséder le même nom que + la ressource qu'ils décrivent, et comporter une entrée pour chaque variante + disponible; chaque entrée consiste en une ligne contiguë d'en-têtes au + format HTTP. les entrées sont séparées par des lignes vides. Les lignes + vides à l'intérieur d'une entrée sont interdites. Par convention, le + fichier de correspondances débute par une entrée concernant l'entité + considérée dans son ensemble (bien que ce ne soit pas obligatoire, et + ignoré si présent). Un exemple de fichier de correspondance est fourni + ci-dessous. + Ce fichier doit être nommé foo.var, car il décrit une + ressource nommée foo.

+ + + URI: foo
+
+ URI: foo.en.html
+ Content-type: text/html
+ Content-language: en
+
+ URI: foo.fr.de.html
+ Content-type: text/html;charset=iso-8859-2
+ Content-language: fr, de
+
+

Notez aussi qu'un fichier de correspondances de types prend le pas sur + les extensions de noms de fichiers, même si les Multivues sont activées. + Si les variantes sont de qualités différentes, on doit l'indiquer + à l'aide du paramètre "qs" à la suite du type de média, comme pour cette + image + (disponible aux formats JPEG, GIF, ou ASCII-art) :

+ + + URI: foo
+
+ URI: foo.jpeg
+ Content-type: image/jpeg; qs=0.8
+
+ URI: foo.gif
+ Content-type: image/gif; qs=0.5
+
+ URI: foo.txt
+ Content-type: text/plain; qs=0.01
+
+ +

Les valeurs de qs peuvent varier de 0.000 à 1.000. Notez que toute + variante possédant une valeur de qs de 0.000 ne sera jamais choisie. + Les variantes qui n'ont pas de paramètre qs défini se voient attribuer + une valeur de 1.0. Le paramètre qs indique la qualité relative de la + variante comparée à celle des autres variantes disponibles, sans tenir + compte des capacités du client. Par exemple, un fichier JPEG possède + en général une qualité supérieure à celle d'un fichier ASCII s'il + représente une photographie. Cependant, si la ressource représentée est + à un ASCII art original, la représentation ASCII sera de meilleure qualité + que la représentation JPEG. Ainsi une valeur de qs est associée à une + variante en fonction de la nature de la ressource qu'elle représente.

+ +

La liste complète des en-têtes reconnus est disponible dans la + documentation de la directive + typemap (module mod_negotiation).

+
+ +
Multivues (option Multiviews) + +

MultiViews est une option qui s'applique à un répertoire, + ce qui signifie qu'elle peut être activée à l'aide d'une directive + Options à l'intérieur d'une section + Directory, Location ou Files dans + httpd.conf, ou (si AllowOverride est correctement positionnée) dans + des fichiers + .htaccess. Notez que Options All + n'active pas MultiViews; vous devez activer cette option en + la nommant explicitement.

+ +

L'effet de MultiViews est le suivant : si le serveur reçoit + une requête pour /tel/répertoire/foo, si + MultiViews est activée pour + /tel/répertoire, et si + /tel/répertoire/foo n'existe pas, le serveur parcourt + le répertoire à la recherche de fichiers nommés foo.*, et génère + une correspondance de types (type map) qui liste tous ces + fichiers, en leur associant les mêmes types de média et encodages de + contenu qu'ils auraient eu si le client avait demandé l'accès à l'un + d'entre eux par son nom. Il choisit ensuite ce qui correspond le mieux + aux besoins du client.

+ +

MultiViews peut aussi s'appliquer à la recherche du fichier + nommé par la directive DirectoryIndex, si le serveur tente d'indexer + un répertoire. Si les fichiers de configuration spécifient

+DirectoryIndex index +

le serveur va choisir entre index.html + et index.html3 si les deux fichiers sont présents. Si aucun + n'est présent, mais index.cgi existe, + le serveur l'exécutera.

+ +

Si, parcequ'elle n'est pas reconnue par mod_mime, + l'extension d'un des fichiers du répertoire ne permet pas de + déterminer son jeu de caractères, son type de contenu, son langage, ou son + encodage, alors + le résultat dépendra de la définition de la directive MultiViewsMatch. Cette directive détermine + si les gestionnaires (handlers), les filtres, et autres types d'extensions + peuvent participer à la négociation MultiVues.

+
+
+ +
Les méthodes de négociation + +

Une fois obtenue la liste des variantes pour une ressource donnée, + Apache dispose de deux méthodes pour choisir la meilleure variante à + retourner, s'il y a lieu, soit à partir d'un fichier de + correspondances de types, soit en se basant sur les noms de fichiers du + répertoire. Il n'est pas nécessaire de connaître en détails comment la + négociation fonctionne réellement pour pouvoir utiliser les fonctionnalités + de négociation de contenu d'Apache. La suite de ce document explique + cependant les méthodes utilisées pour ceux ou celles qui sont + intéressés(ées).

+ +

Il existe deux méthodes de négociation :

+ +
    +
  1. La négociation effectuée par le serveur selon l'algorithme + d'Apache est normalement utilisée. l'algorithme d'Apache est + expliqué plus en détails ci-dessous. Quand cet algorithme est utilisé, + Apache peut parfois "bricoler" le facteur de qualité (qs) d'une dimension + particulière afin d'obtenir un meilleur résultat. + La manière dont Apache peut modifier les facteurs de qualité est + expliquée plus en détails ci-dessous.
  2. + +
  3. La négociation de contenu transparente est utilisée + quand le navigateur le demande explicitement selon le mécanisme défini + dans la RFC 2295. Cette méthode de négociation donne au navigateur le + contrôle total du choix de la meilleure variante; le résultat dépend + cependant de la spécificité des algorithmes utilisés par le navigateur. + Au cours du processus de négociation transparente, le navigateur peut + demander à Apache d'exécuter l'"algorithme de sélection de variante à + distance" défini dans la RFC 2296.
  4. +
+ +
Les dimensions de la négociation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DimensionNotes
Type de médiaLe navigateur affiche ses préférences à l'aide du champ d'en-tête + Accept. Chaque type de média peut se voir associé un facteur de + qualité. La description de la variante peut aussi avoir un facteur de + qualité (le paramètre "qs").
LangageLe navigateur affiche ses préférences à l'aide du champ d'en-tête + Accept-Language. Chaque langue peut se voir associée un facteur de + qualité. Les variantes peuvent être associées avec zéro, un ou + plusieurs langages.
EncodingLe navigateur affiche ses préférences à l'aide du champ d'en-tête + Accept-Encoding. Chaque encodage peut se voir associé un facteur de + qualité.
CharsetLe navigateur affiche ses préférences à l'aide du champ d'en-tête + Accept-Charset. Chaque jeu de caractères peut se voir associé un facteur de + qualité. Les variantes peuvent préciser un jeu de caractères comme + paramètre du type de média.
+
+ +
L'algorithme de négociation d'Apache + +

Apache peut utiliser l'algorithme suivant pour choisir la "meilleure" + variante (s'il y en a une) à retourner au navigateur. Cet algorithme n'est pas + configurable. Il fonctionne comme suit :

+ +
    +
  1. En premier lieu, pour chaque dimension de la négociation, consulter + le champ d'en-tête Accept* approprié et assigner une qualité à + chaque variante. Si l'en-tête Accept* pour toute dimension + implique que la variante n'est pas acceptable, éliminer cette dernière. + S'il ne reste plus de variante, aller à l'étape 4.
  2. + +
  3. + Choisir la "meilleure" variante par élimination. Chacun des tests + suivants est effectué dans cet ordre. Toute variante non sélectionnée + à l'issue d'un test est éliminée. Après chaque test, s'il reste une + seule variante, choisir cette dernière comme celle qui correspond le + mieux puis aller à l'étape 3. S'il reste plusieurs variantes, passer + au test suivant. + +
      +
    1. Multiplier le facteur de qualité de l'en-tête + Accept par le facteur de qualité "qs" pour le type de + média de ces variantes, et choisir la variante qui possède la valeur + la plus importante.
    2. + +
    3. Sélectionner les variantes qui possèdent le facteur de qualité + de langage le plus haut.
    4. + +
    5. Sélectionner les variantes dont le langage correspond le mieux, + en se basant sur l'ordre des langages de l'en-tête + Accept-Language (s'il existe), ou de la directive + LanguagePriority (si elle existe).
    6. + +
    7. Sélectionner les variantes possédant le paramètre de média + "level" le plus élevé (utilisé pour préciser la version des types de + média text/html).
    8. + +
    9. Sélectionner les variantes possédant le paramètre de média + "charset" (jeu de caractères) qui correspond le mieux, en se basant + sur la ligne d'en-tête Accept-Charset . Le jeu de + caractères ISO-8859-1 est acceptable sauf s'il est explicitement + exclus. Les variantes avec un type de média text/* + mais non explicitement associées avec un jeu de caractères + particulier sont supposées être en ISO-8859-1.
    10. + +
    11. Sélectionner les variantes dont le paramètre de média "charset" + associé n'est pas ISO-8859-1. S'il n'en existe pas, + sélectionner toutes les variantes.
    12. + +
    13. Sélectionner les variantes avec le meilleur encodage. S'il existe + des variantes avec un encodage acceptable pour le client, + sélectionner celles-ci. Sinon, s'il existe des variantes encodées et + des variantes non encodées, ne sélectionner que les variantes non + encodées. Si toutes les variantes sont encodées ou si aucune + ne l'est, sélectionner toutes les variantes.
    14. + +
    15. Sélectionner les variantes dont le contenu a la longueur + la plus courte.
    16. + +
    17. Sélectionner la première des variantes restantes. Il s'agira + soit de la première variante listée dans le fichier de + correspondances de types, soit, quand les variantes sont lues depuis + le répertoire, la première par ordre alphabétique quand elles sont + triées selon le code ASCII.
    18. +
    +
  4. + +
  5. L'algorithme a maintenant sélectionné une variante considérée comme + la "meilleure", il la retourne donc au client en guise de réponse. + L'en-tête HTTP Vary de la réponse est renseigné de façon à + indiquer les dimensions de la négociation (les navigateurs et les caches + peuvent utiliser cette information lors de la mise en cache de la + ressource). Travail terminé.
  6. + +
  7. Le passage par cette étape signifie qu'aucune variante n'a été + sélectionnée (parce qu'aucune n'est acceptable pour le client HTTP). + Envoyer une réponse avec un code de statut 406 (qui signifie "Aucune + représentation acceptable") et un corps comportant un document HTML qui + affiche les variantes disponibles. Renseigner aussi l'en-tête HTTP + Vary de façon à indiquer les dimensions de la variante.
  8. +
+
+
+ +
Ajustement des valeurs de qualité + +

Parfois Apache modifie les valeurs de qualité par rapport à celles qui + découleraient d'une stricte interprétation de l'algorithme de négociation + d'Apache ci-dessus, ceci pour améliorer les résultats de l'algorithme pour + les navigateurs qui envoient des informations incomplètes ou inappropriées. + Certains des navigateurs les plus populaires envoient des informations dans + l'en-tête Accept qui, sans ce traitement, provoqueraient la + sélection d'une variante inappropriée dans de nombreux cas. Quand un + navigateur envoie des informations complètes et correctes ces ajustements + ne sont pas effectués.

+ +
Types de média et caractères génériques + +

L'en-tête de requête Accept: indique les types de média + souhaités. Il peut aussi contenir des types de média avec caractères + génériques, comme "image/*" ou "*/*" où * correspond à n'importe quelle + chaîne de caractères. Ainsi une requête contenant :

+ +Accept: image/*, */* + +

indiquerait que tout type de média est acceptable, avec une préférence + pour les types commençant par "image/". + Certains navigateurs ajoutent par défaut des types de média avec caractères + génériques aux types explicitement nommés qu'ils peuvent gérer. + Par exemple :

+ + + Accept: text/html, text/plain, image/gif, image/jpeg, */* + +

Ceci indique que les types explicitement listés sont préférés, mais + qu'une représentation avec un type différent de ces derniers conviendra + aussi. Les valeurs de qualités explicites, + afin de préciser ce que veut vraiment le navigateur, s'utilisent + comme suit :

+ + Accept: text/html, text/plain, image/gif, image/jpeg, */*; q=0.01 + +

Les types explicites n'ont pas de facteur de qualité, la valeur par + défaut de leur préférence est donc de 1.0 (la plus haute). Le type avec + caractères génériques */* se voit attribuer une préférence basse de 0.01, + si bien que les types autres que ceux explicitement listés ne seront retournés + que s'il n'existe pas de variante correspondant à un type explicitement + listé.

+ +

Si l'en-tête Accept: ne contient pas aucun + facteur de qualité, Apache positionne la valeur de qualité de + "*/*", si present, à 0.01 pour simuler l'effet désiré. Il positionne aussi + la valeur de qualité des types avec caractères génériques au format + "type/*" à 0.02 (ils sont donc préférés à ceux correspondant à "*/*"). Si + un type de média dans l'en-tête Accept: contient un facteur de + qualité, ces valeurs spéciales ne seront pas appliquées, de façon + à ce que les requêtes de navigateurs qui envoient les informations + explicites à prendre en compte fonctionnent comme souhaité.

+
+ +
Exceptions dans la négociation du +langage + +

A partir de la version 2.0 d'Apache, certaines exceptions ont été + ajoutées à l'algorithme de négociation afin de ménager une issue de secours + quand la négociation ne trouve aucun langage correspondant.

+ +

Quand un client demande une page sur votre serveur, si ce dernier ne + parvient pas à trouver une page dont la langue corresponde à l'en-tête + Accept-language envoyé par le navigateur, il enverra au client + une réponse "Aucune variante acceptable" ou "Plusieurs choix possibles". + Pour éviter ces + messages d'erreur, il est possible de configurer Apache de façon à ce que, + dans ces cas, il ignore l'en-tête Accept-language et fournisse + tout de même un document, même s'il ne correspond pas exactement à la + demande explicite du client. La directive ForceLanguagePriority + peut être utilisée pour éviter ces messages d'erreur et leur substituer une + page dont le langage sera déterminé en fonction du contenu de la directive + LanguagePriority.

+ +

Le serveur va aussi essayer d'étendre sa recherche de correspondance aux + sous-ensembles de langages quand aucune correspondance exacte ne peut être + trouvée. Par exemple, si un client demande des documents possédant le + langage en-GB, c'est à dire anglais britannique, le standard + HTTP/1.1 n'autorise normalement pas le serveur à faire correspondre cette + demande à un document dont le langage est simplement en. + (Notez qu'inclure en-GB et non en dans l'en-tête + Accept-Language constitue une quasi-erreur de configuration, + car il est très peu probable qu'un lecteur qui comprend l'anglais + britannique, ne comprenne pas l'anglais en général. Malheureusement, de + nombreux clients ont réellement des configurations par défaut de ce type.) + Cependant, si aucune autre correspondance de langage n'est possible, et que le + serveur est sur le point de retourner une erreur "Aucune variable + acceptable" ou de choisir le langage défini par la directive LanguagePriority, le serveur ignorera + la spécification du sous-ensemble de langage et associera la demande en + en-GB à des documents en en. Implicitement, + Apache ajoute le langage parent à la liste de langues acceptées par le + client avec une valeur de qualité très basse. Notez cependant que si le + client demande "en-GB; q=0.9, fr; q=0.8", et le serveur dispose de + documents estampillés "en" et "fr", alors c'est le document "fr" qui sera + retourné, tout ceci dans un souci de compatibilité avec la spécification + HTTP/1.1 et afin de fonctionner efficacement avec les clients + correctement configurés.

+ +

Pour supporter les techniques avancées (comme les cookies ou les chemins + d'URL spéciaux) afin de déterminer le langage préféré de l'utilisateur, le + module mod_negotiation reconnaît la + variable d'environnement + prefer-language + depuis la version 2.0.47 d'Apache. Si elle est définie et contient un + symbole de langage approprié, mod_negotiation va essayer + de sélectionner une variante correspondante. S'il n'existe pas de telle + variante, le processus normal de négociation sera lancé.

+ + Exemple + SetEnvIf Cookie "language=(.+)" prefer-language=$1 + Header append Vary cookie + +
+
+ +
Extensions à la négociation de contenu +transparente + +

Apache étend le protocole de négociation de contenu transparente (RFC +2295) comme suit. Un nouvel élément {encodage ..} est utilisé dans +les listes de variantes pour marquer celles qui ne sont disponibles qu'avec un +encodage de contenu spécifique. L'implémentation de l'algorithme +RVSA/1.0 (RFC 2296) est étendue à la reconnaissance de variantes encodées dans +la liste, et à leur utilisation en tant que variantes candidates à partir du +moment où leur encodage satisfait au contenu de l'en-tête de requête +Accept-Encoding. L'implémentation RVSA/1.0 n'arrondit pas les +facteurs de qualité calculés à 5 décimales avant d'avoir choisi la meilleure +variante.

+
+ +
Remarques à propos des liens hypertextes et des +conventions de nommage + +

Si vous utilisez la négociation de langage, vous avez le choix entre + différentes conventions de nommage, car les fichiers peuvent posséder + plusieurs extensions, et l'ordre dans lequel ces dernières apparaissent + est en général sans rapport (voir la documentation sur le module mod_mime + pour plus de détails).

+ +

Un fichier type possède une extension liée au type MIME + (par exemple, html), mais parfois aussi une + extension liée à l'encodage (par exemple, gz), + et bien sûr une extension liée au langage + (par exemple, en) quand plusieurs variantes de + langage sont disponibles pour ce fichier.

+ +

Exemples :

+ +
    +
  • foo.en.html
  • + +
  • foo.html.en
  • + +
  • foo.en.html.gz
  • +
+ +

Ci-dessous d'autres exemples de noms de fichiers avec des liens + hypertextes valides et invalides :

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Nom fichierlien valideLien invalide
foo.html.enfoo
+ foo.html
-
foo.en.htmlfoofoo.html
foo.html.en.gzfoo
+ foo.html
foo.gz
+ foo.html.gz
foo.en.html.gzfoofoo.html
+ foo.html.gz
+ foo.gz
foo.gz.html.enfoo
+ foo.gz
+ foo.gz.html
foo.html
foo.html.gz.enfoo
+ foo.html
+ foo.html.gz
foo.gz
+ +

En regardant la table ci-dessus, vous remarquerez qu'il est toujours + possible d'utiliser le nom de fichier sans extension dans un lien + (par exemple, foo). L'avantage est de pouvoir + dissimuler le type réel du fichier associé à un document et de pouvoir + le modifier + ultérieurement, par exemple, de html à + shtml ou cgi sans avoir à + mettre à jour aucun lien.

+ +

Si vous souhaitez continuer à utiliser un type MIME dans vos liens + (par exemple foo.html), l'extension liée au langage + (y compris une extension liée à l'encodage s'il en existe une) + doit se trouver à droite de l'extension liée au type MIME + (par exemple, foo.html.en).

+
+ +
Remarque sur la mise en cache + +

Quand un cache stocke une représentation, il l'associe avec l'URL de la + requête. Lorsque cette URL est à nouveau demandée, le cache peut utiliser + la représentation stockée. Cependant, si la ressource est négociable au + niveau du serveur, il se peut que seule la première variante demandée soit + mise en cache et de ce fait, la correspondance positive du cache peut + entraîner une réponse inappropriée. Pour éviter ceci, Apache marque par + défaut toutes les réponses qui sont retournées après une négociation de + contenu comme "non-cachables" par les clients HTTP/1.0. Apache supporte + aussi les fonctionnalités du protocole HTTP/1.1 afin de permettre la mise + en cache des réponses négociées.

+ +

Pour les requêtes en provenance d'un client compatible HTTP/1.0 + (un navigateur ou un cache), la directive CacheNegotiatedDocs peut être utilisée + pour permettre la mise en cache des réponses qui ont fait l'objet d'une + négociation. Cette directive peut intervenir dans la configuration au + niveau du serveur ou de l'hôte virtuel, et n'accepte aucun argument. Elle + n'a aucun effet sur les requêtes en provenance de clients HTTP/1.1.

+ +

Pour les clients HTTP/1.1, Apache envoie un en-tête de réponse HTTP + Vary afin d'indiquer les dimensions de la négociation pour + cette réponse. Les caches peuvent + utiliser cette information afin de déterminer + si une requête peut être servie à partir de la copie locale. Pour inciter + un cache à utiliser la copie locale sans tenir compte des dimensions de la + négociation, définissez la + variable d'environnement + force-no-vary.

+ +
+ +
Pour plus d'informations + +

Pour plus d'informations à propos de la négociation de contenu, voir le + document d'Alan J. Flavell Language + Negotiation Notes. Mais gardez à l'esprit que ce document ne tiendra + peut-être pas compte des changements intervenus dans Apache 2.0.

+
+ +
diff --git a/docs/manual/content-negotiation.xml.meta b/docs/manual/content-negotiation.xml.meta index b8337db2e83..e07da48d31b 100644 --- a/docs/manual/content-negotiation.xml.meta +++ b/docs/manual/content-negotiation.xml.meta @@ -7,6 +7,7 @@ en + fr ja ko diff --git a/docs/manual/glossary.html b/docs/manual/glossary.html index 1efee972402..35303ba44f6 100644 --- a/docs/manual/glossary.html +++ b/docs/manual/glossary.html @@ -10,6 +10,10 @@ URI: glossary.html.es Content-Language: es Content-type: text/html; charset=ISO-8859-1 +URI: glossary.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 + URI: glossary.html.ko.euc-kr Content-Language: ko Content-type: text/html; charset=EUC-KR diff --git a/docs/manual/glossary.html.en b/docs/manual/glossary.html.en index 3f2e3b6f767..4e6305066da 100644 --- a/docs/manual/glossary.html.en +++ b/docs/manual/glossary.html.en @@ -21,7 +21,8 @@

Available Languages:  de  |  en  |  es  | - ko 

+ fr  | + ko 

This glossary defines some of the common terminology related to Apache in @@ -448,7 +449,8 @@

Available Languages:  de  |  en  |  es  | - ko 

+ fr  | + ko 

diff --git a/docs/manual/glossary.html.fr b/docs/manual/glossary.html.fr new file mode 100644 index 00000000000..58feb894990 --- /dev/null +++ b/docs/manual/glossary.html.fr @@ -0,0 +1,550 @@ + + + +Glossaire - Serveur Apache HTTP + + + + + +
<-
+

Glossaire

+
+

Langues Disponibles:  de  | + en  | + es  | + fr  | + ko 

+
+ +

Ce glossaire définit la terminologie courante relative à Apache en + particulier, et aux serveurs web en général. Vous trouverez plus + d'informations sur chaque concept dans les liens fournis.

+
+
top
+
+

Définitions

+ +
Algorithme
+ +
Une formule sans ambiguité ou un jeu de règles destinées à + résoudre un problème en un nombre fini d'étapes. Les algorithmes de + chiffrement sont en général appelés + Ciphers. +
+ +
Algorithme de chiffrement + (Cipher)
+
Un algorithme ou un système de chiffrement des données. + Quelques exemples : DES, IDEA, RC4, etc.
+ Voir : chiffrement SSL/TLS +
+ +
Archive Tar (Tarball)
+
Un paquetage de fichiers rassemblés dans une archive + à l'aide de l'utilitaire tar. + Les distributions d'Apache sont stockées dans des Archives Tar compressées + ou en utilisant pkzip. +
+ +
Authentification
+
L'identification formelle d'une entité du réseau comme un serveur, un + client, ou un utilisateur.
+ Voir : Authentification, Autorisation, et + contrôle d'accès +
+ +
Autorité de Certification + (Certification Authority) + (CA)
+
Un tiers de confiance habilité à signer des certificats pour des entités + du réseau qu'il a authentifiées selon des critères basés sur la sécurité. + Les autres entités du réseau peuvent alors utiliser la signature pour + vérifier qu'une CA a authentifié le porteur du certificat.
+ Voir : chiffrement SSL/TLS +
+ + +
Certificat (Certificate)
+
Un ensemble de données servant à authentifier des entités du + réseau comme un serveur ou un client. Un certificat contient des ensembles + d'informations X509 à propos de son propriétaire (appelé sujet/subject) + et de l'Autorité de Certification + (Certification Authority) ou CA signataire (appelée + le fournisseur/issuer), ainsi que la + clé publique (public + key) du propriétaire et la + signature de la CA. Les entités du réseau vérifient ces signatures + en utilisant les certificats des Autorités de Certification.
+ Voir : chiffrement SSL/TLS +
+ +
Chiffrement à Clé Publique + (Public Key Cryptography)
+
L'étude et l'application des systèmes de chiffrement asymétriques, + qui utilisent une clé pour le chiffrement et une autre pour le + déchiffrement. Les deux clés correspondantes constituent une paire de clés. + Appelé aussi chiffrement asymétrique. +
+ Voir : chiffrement SSL/TLS +
+ +
Clé Privée (Private Key)
+
La clé secrète dans un système de + chiffrement à clé publique, + utilisée pour déchiffrer les messages entrants et signer + les messages sortants.
+ Voir : chiffrement SSL/TLS +
+ +
Clé Publique (Public Key)
+
La clé accessible au public dans un système de Chiffrement à clé publique, + utilisée pour chiffrer les messages destinés uniquement à son + propriétaire et déchiffrer les signatures + faites par son propriétaire.
+ Voir : chiffrement SSL/TLS +
+ +
CONNECT
+
Une méthode HTTP pour encapsuler + des données brutes dans HTTP. Elle peut aussi être utilisée pour encapsuler + d'autres protocoles, comme le protocole SSL. +
+ +
Contexte (Context)
+
Une portion des + fichiers de configuration dans laquelle certains types de + directives sont autorisés.
+ Voir : Termes utilisés + pour décrire les directives d'Apache +
+ +
+
Contrôle d'accès + (Access Control)
+
La restriction d'accès à des zones du réseau. Habituellement + dans un contexte Apache, + la restriction d'accès à certaines URLs.
+ Voir : Authentification, Autorisation et + Contrôle d'accès +
+ +
+ Couche des Points de connexion Sécurisés + (Secure Sockets Layer) + (SSL)
+
Un protocole créé par Netscape Communications Corporation pour + l'authentification et le chiffrement généraux des communications dans les + réseaux TCP/IP. L'utilisation la plus connue est HTTPS, autrement dit + le Protocole de Transfert Hypertexte (HTTP) au dessus de SSL.
+ Voir : chiffrement SSL/TLS +
+ +
+ Cryptographie Symétrique (Symmetric Cryptography)
+
L'étude et l'application des Algorithmes de chiffrement qui + utilisent une clé secrète unique pour les opérations de chiffrement et de + déchiffrement.
+ Voir : chiffrement SSL/TLS +
+ + +
+ Dégradé pour l'exportation + (Export-Crippled)
+
Diminué en terme de puissance cryptographique (et de sécurité) + afin de respecter les Règles de l'Administration des Exportations + des Etats-Unis (Export Administration Regulations ou EAR). + Les logiciels de cryptographie dégradés pour l'exportation sont limités + à une clé de petite taille, et produisent un + Texte crypté qui peut en général être décrypté + par force brute.
+ Voir : chiffrement SSL/TLS +
+ + +
Demande de signature de certificat + (Certificate Signing Request) + (CSR)
+
La soumission d'un certificat + non signé à une Autorité de + certification, qui le signe avec la Clé privée de leur + Certificat de CA. Une fois le CSR signé, il devient un vrai + certificat.
+ Voir : chiffrement SSL/TLS +
+ +
Directive
+
Une commande de configuration qui contrôle un ou plusieurs aspects du + comportement d'Apache. Les directives sont placées dans le Fichier de configuration
+ Voir : Index des directives +
+ +
Directive de configuration + (Configuration Directive)
+
Voir : Directive
+ +
En-tête (Header)
+
La partie de la requête et de la réponse + HTTP qui est envoyée avant le contenu + proprement dit, et contient des méta-informations décrivant le contenu. +
+ +
Expression Rationnelle + (Regular Expression) + (Regex)
+
Une méthode pour décrire un modèle sous forme de texte - par exemple, + "tous les mots qui commencent par la lettre A" ou "tous les numéros de + téléphone à 10 chiffres" ou encore "Toutes les phrases contenant 2 virgules, + et aucun Q majuscule". Les expressions rationnelles sont très utiles dans + Apache car elles vous permettent d'appliquer certains attributs à des + ensembles de fichiers ou ressources avec une grande flexibilité + - par exemple, tous les fichiers .gif et .jpg situés dans tout répertoire + nommé "images", pourraient être enregistrés comme + "/images/.*(jpg|gif)$". Apache utilise les Expressions + Rationnelles Compatibles avec Perl fournies par la librairie PCRE. +
+ +
+ Fichier de configuration + (Configuration File)
+
Un fichier texte contenant des + Directives + qui contrôlent la configuration d'Apache.
+ Voir : Fichiers de configuration +
+ +
Filtre (Filter)
+
Un traitement appliqué aux données envoyées ou reçues par le serveur. + Les filtres en entrée traitent les données envoyées au serveur par le + client, alors que les filtres en sortie traitent les documents sur le + serveur avant qu'ils soient envoyés au client. + Par exemple, le filtre en sortie + INCLUDES + traite les documents pour les + Server Side Includes (Inclusions côté Serveur) + .
+ Voir : Filtres +
+ +
Gestionnaire (Handler)
+
Une représentation interne à Apache de l'action à entreprendre + quand un fichier est appelé. En général, les fichiers ont des gestionnaires + implicites, basés sur le type de fichier. Normalement, tous les + fichiers sont directement servis par le serveur, mais certains + types de fichiers sont "gérés" séparément. Par exemple, le gestionnaire + cgi-script désigne les fichiers qui doivent être traités + comme CGIs.
+ Voir : Utilisation des gestionnaires d'Apache +
+ +
Hachage (Hash)
+
Un algorithme mathématique à sens unique, irréversible, générant une + chaîne de longueur fixe à partir d'une autre chaîne de longueur quelconque. + Des chaînes différentes en entrée vont normalement produire des chaînes + différentes en sortie (selon la fonction de hachage). +
+ +
Hébergement Virtuel + (Virtual Hosting)
+
Servir des sites web multiples en utilisant une seule instance d'Apache. + Les Hôtes virtuels basés sur IP différencient les sites web en se + basant sur leur adresse IP, alors que les + Hôtes virtuels basés sur le nom utilisent uniquement le nom d'hôte + et peuvent en conséquence héberger de nombreux sites avec la même + adresse IP.
+ Voir la Documentation des Hôtes Virtuels d'Apache +
+ + +
.htaccess
+
Un fichier de configuration + placé à un certain niveau de l'arborescence du site web, et appliquant des + directives de configuration au + répertoire dans lequel il est placé, ainsi qu'à tous ses sous-répertoires. + En dépit de son nom, ce fichier peut contenir pratiquement tout type de + directive, et pas seulement des directives de contrôle d'accès.
+ Voir : Fichiers de configuration +
+ +
httpd.conf
+
Le fichier de configuration + principal d'Apache. Sa localisation par défaut est + /usr/local/apache2/conf/httpd.conf, mais ceci peut être + changé en utilisant des options de compilation ou d'exécution.
+ Voir : Fichiers de configuration +
+ +
HTTPS
+
Le Protocole de Transfert Hypertexte (Sécurisé), le mécanisme de + communication cryptée standard sur le World Wide Web. + Il s'agit en fait de HTTP au dessus de + SSL.
+ Voir : chiffrement SSL/TLS +
+ +
Identificateur de Ressource Uniformisé + (Uniform Resource Identifier) + (URI)
+
Une chaîne de caractères compacte servant à identifier une ressource + abstraite ou physique. Elle est formellement définie par la RFC 2396. Les URIs + utilisées sur le world-wide web sont souvent appelées URLs. +
+ +
+ Inclusions Côté Serveur + (Server Side Includes) (SSI) +
+
Une technique permettant d'englober des directives de traitement dans + des fichiers HTML.
+ Voir : Introduction aux Inclusions Côté Serveur +
+ +
+Interface commune avec les programmes externes +(Common Gateway Interface) + (CGI)
+
La définition standard d'une interface entre un serveur web et un + programme externe pour permettre à ce dernier de traiter des requêtes. + L'interface a été initialement définie par NCSA mais il + existe aussi le projet + RFC project.
+ Voir : Contenu dynamique avec CGI +
+ + +
Bibliothèques pour la portabilité d'Apache + (Apache Portable Runtime) (APR)
+
Un jeu de bibliothèques qui fournit la plupart des interfaces de base + entre le serveur et le système d'exploitation. APR est développé + parallèlement au serveur HTTP Apache comme projet indépendant.
+ Voir : Apache Portable Runtime + Project +
+
+Localisation de Ressource Uniformisée +(Uniform Resource Locator) + (URL)
+
Le nom/adresse d'une ressource sur l'Internet. Il s'agit du terme + informel commun pour ce qui est formellement défini comme + Identificateur de Ressource Uniformisé. + Les URLs sont généralement construites selon un schéma, comme + http ou + https, un nom d'hôte, et un chemin. Une URL pour cette page + pourrait être + http://httpd.apache.org/docs/2.2/glossary.html. +
+ + +
Mandataire (Proxy)
+
Un serveur intermédiaire qui se situe entre le client et le + serveur d'origine. + Il prend en compte les requêtes des clients, les transmet au serveur + d'origine, puis renvoie la réponse du serveur d'origine au client. + Si plusieurs clients demandent le même contenu, le mandataire peut l'extraire + de son cache, plutôt que le demander au serveur d'origine + à chaque fois, ce qui réduit le temps de réponse.
+ Voir : mod_proxy +
+ +
Mandataire inverse + (Reverse Proxy)
+
Un serveur mandataire qui est vu du client + comme un serveur d'origine. Ceci peut s'avérer utile pour + dissimuler le serveur d'origine réel au client pour des raisons de sécurité, + ou pour répartir la charge. +
+ +
Méthode (Method)
+
Dans le contexte HTTP, une action à + effectuer sur une ressource spécifiée dans la ligne de requête + par le client. Parmi les méthodes disponibles dans HTTP, on trouve + GET, POST, + et PUT. +
+ +
Module
+
Une partie indépendante d'un programme. De nombreuses fonctionnalités + d'Apache sont fournies par des modules que vous pouvez choisir d'inclure + ou d'exclure. Les modules qui sont compilés dans le binaire + httpd sont appelés modules statiques, alors + que les modules qui existent séparément et peuvent être chargés + optionnellement à l'exécution sont appelés + modules dynamiques ou DSOs. + Les modules qui sont inclus par défaut sont appelés + modules de base. De nombreux modules disponibles pour Apache + ne se trouvent pas dans l'archive + du Serveur HTTP Apache . Il sont appelés + modules tiers.
+ Voir : Index des modules +
+ +
Mot de Passe (Pass Phrase)
+
Le mot ou la phrase qui protège les fichiers de clés privées. + Il empêche les utilisateurs non autorisés de les déchiffrer. En général, + il s'agit simplement de la clé secrète de chiffrement/déchiffrement + utilisée pour les Algorithmes de chiffrement.
+ Voir : chiffrement SSL/TLS +
+ +
Nom de domaine entièrement qualifié + (Fully-Qualified Domain-Name) + (FQDN)
+
Le nom unique d'une entité du réseau, comprenant un nom d'hôte et un + nom de domaine qui peuvent être résolus en une adresse IP. Par exemple, + www est un nom d'hôte, example.com est un nom + de domaine, et www.example.com est un nom de domaine + entièrement qualifié. +
+ +
+ Nombre Magique des Modules + (Module Magic Number) + (MMN)
+
Le Nombre Magique des Modules est une constante définie dans le code + source d'Apache et associée à la compatibilité binaire des modules. + Sa valeur est modifiée quand des structures internes d'Apache, des appels + de fonctions et d'autres parties significatives de l'API sont modifiées + de telle façon que la compatibilité binaire ne peut plus être garantie. + En cas de changement de MMN, tous les modules tiers doivent être au + moins recompilés, et parfois même légèrement modifiés afin de pouvoir + fonctionner avec la nouvelle version d'Apache. +
+ +
+ Objet Dynamique Partagé (Dynamic Shared Object) + (DSO)
+
Modules compilés en dehors du binaire + Apache httpd et qui peuvent être + chargés à la demande.
+ Voir : Support des objets dynamiques partagés +
+ +
OpenSSL
+
L'ensemble d'outils Open Source pour SSL/TLS
+ Voir http://www.openssl.org/# +
+ +
+ Outil de gestion des extensions Apache + (APache eXtension Tool) + (apxs)
+
Un script Perl qui aide à la compilation des sources de module sous forme d'Objets Dynamiques Partagés + (Dynamic Shared Objects ou + DSOs) et facilite leur installation + dans le serveur Web Apache.
+ Voir : Page de manuel : apxs +
+ +
Plein Texte (Plaintext)
+
Le texte non chiffré.
+ + + +
Protocole de Transfert Hypertexte + (HyperText Transfer Protocol) + (HTTP)
+
Le protocole de transmission standard utilisé sur le World Wide Web. + Apache implémente la version 1.1 du protocole, référencée comme HTTP/1.1 et + définie par la + RFC 2616. +
+ +
Résumé de message + (Message Digest)
+
Un hachage du message, qui peut être utilisé pour vérifier + que son contenu n'a pas été altéré durant le transfert.
+ Voir : chiffrement SSL/TLS +
+ +
+ Sécurité de la couche Transport + (Transport Layer Security) + (TLS)
+
Le protocole successeur de SSL, créé par l'Internet Engineering Task + Force (IETF) pour l'authentification et le chiffrement généraux des + communications dans les réseaux TCP/IP. TLS version 1 est pratiquement + identique à SSL version 3.
+ Voir : chiffrement SSL/TLS +
+ +
Session
+
Les informations sur le contexte d'une communication en général.
+ +
Signature numérique + (Digital Signature)
+
Un bloc de texte crypté qui valide un certificat ou un autre fichier. + Une Autorité de certification + crée une signature en générant une empreinte de la Clé publique + fournie avec le Certificat; la CA chiffre ensuite l'empreinte + avec sa propre Clé privée. Seule la clé publique de la CA + peut décrypter la signature, ce qui permet de vérifier que la CA a bien + authentifié l'entité du réseau qui possède le + Certificat.
+ Voir : chiffrement SSL/TLS +
+ +
SSLeay
+
La bibliothèque originelle d'implémentation de SSL/TLS développée par + Eric A. Young +
+ +
Texte crypté +(Ciphertext)
+
Le résultat du passage d'un document + Plaintext (Plein texte) par un + Cipher.
+ Voir : chiffrement SSL/TLS +
+ +
Type MIME (MIME-type)
+
Une méthode pour décrire le type de document transmis. Son nom + vient du fait que son format est issu des Multipurpose + Internet Mail Extensions (Extensions Multi-usages de la + Messagerie par Internet) . Il comprend un type majeur et un type + mineur, séparés par un slash (barre oblique). On trouve + entre autres types text/html, + image/gif, et application/octet-stream. Dans + HTTP, le type MIME est transmis dans l' + en-tête Content-Type.
+ Voir : mod_mime +
+ + +
+ Variable d'environnement + (Environment Variable) (env-variable)
+
Ce sont des variables nommées gérées par le shell du système + d'exploitation, et servant au stockage d'informations et à la + communication entre les programmes. Apache possède aussi des variables + internes considérées comme variables d'environnement, mais stockées dans + des structures internes à Apache, et non dans l'environnement + du shell.
+ Voir : Les variables d'environnement dans Apache +
+ +
X.509
+
Une norme de certificat d'authentification recommandée par l'International + Telecommunication Union (ITU-T) et utilisée pour + l'authentification SSL/TLS.
Voir : chiffrement SSL/TLS +
+
+
+
+

Langues Disponibles:  de  | + en  | + es  | + fr  | + ko 

+
+ \ No newline at end of file diff --git a/docs/manual/glossary.xml.fr b/docs/manual/glossary.xml.fr new file mode 100644 index 00000000000..739941b5b9a --- /dev/null +++ b/docs/manual/glossary.xml.fr @@ -0,0 +1,568 @@ + + + + + + + + + + + + + Glossaire + + +

Ce glossaire définit la terminologie courante relative à Apache en + particulier, et aux serveurs web en général. Vous trouverez plus + d'informations sur chaque concept dans les liens fournis.

+
+ +
Définitions + +
Algorithme
+ +
Une formule sans ambiguité ou un jeu de règles destinées à + résoudre un problème en un nombre fini d'étapes. Les algorithmes de + chiffrement sont en général appelés + Ciphers. +
+ +
Algorithme de chiffrement + (Cipher)
+
Un algorithme ou un système de chiffrement des données. + Quelques exemples : DES, IDEA, RC4, etc.
+ Voir : chiffrement SSL/TLS +
+ +
Archive Tar (Tarball)
+
Un paquetage de fichiers rassemblés dans une archive + à l'aide de l'utilitaire tar. + Les distributions d'Apache sont stockées dans des Archives Tar compressées + ou en utilisant pkzip. +
+ +
Authentification
+
L'identification formelle d'une entité du réseau comme un serveur, un + client, ou un utilisateur.
+ Voir : Authentification, Autorisation, et + contrôle d'accès +
+ +
Autorité de Certification + (Certification Authority) + (CA)
+
Un tiers de confiance habilité à signer des certificats pour des entités + du réseau qu'il a authentifiées selon des critères basés sur la sécurité. + Les autres entités du réseau peuvent alors utiliser la signature pour + vérifier qu'une CA a authentifié le porteur du certificat.
+ Voir : chiffrement SSL/TLS +
+ + +
Certificat (Certificate)
+
Un ensemble de données servant à authentifier des entités du + réseau comme un serveur ou un client. Un certificat contient des ensembles + d'informations X509 à propos de son propriétaire (appelé sujet/subject) + et de l'Autorité de Certification + (Certification Authority) ou CA signataire (appelée + le fournisseur/issuer), ainsi que la + clé publique (public + key) du propriétaire et la + signature de la CA. Les entités du réseau vérifient ces signatures + en utilisant les certificats des Autorités de Certification.
+ Voir : chiffrement SSL/TLS +
+ +
Chiffrement à Clé Publique + (Public Key Cryptography)
+
L'étude et l'application des systèmes de chiffrement asymétriques, + qui utilisent une clé pour le chiffrement et une autre pour le + déchiffrement. Les deux clés correspondantes constituent une paire de clés. + Appelé aussi chiffrement asymétrique. +
+ Voir : chiffrement SSL/TLS +
+ +
Clé Privée (Private Key)
+
La clé secrète dans un système de + chiffrement à clé publique, + utilisée pour déchiffrer les messages entrants et signer + les messages sortants.
+ Voir : chiffrement SSL/TLS +
+ +
Clé Publique (Public Key)
+
La clé accessible au public dans un système de Chiffrement à clé publique, + utilisée pour chiffrer les messages destinés uniquement à son + propriétaire et déchiffrer les signatures + faites par son propriétaire.
+ Voir : chiffrement SSL/TLS +
+ +
CONNECT
+
Une méthode HTTP pour encapsuler + des données brutes dans HTTP. Elle peut aussi être utilisée pour encapsuler + d'autres protocoles, comme le protocole SSL. +
+ +
Contexte (Context)
+
Une portion des + fichiers de configuration dans laquelle certains types de + directives sont autorisés.
+ Voir : Termes utilisés + pour décrire les directives d'Apache +
+ +
+
Contrôle d'accès + (Access Control)
+
La restriction d'accès à des zones du réseau. Habituellement + dans un contexte Apache, + la restriction d'accès à certaines URLs.
+ Voir : Authentification, Autorisation et + Contrôle d'accès +
+ +
+ Couche des Points de connexion Sécurisés + (Secure Sockets Layer) + (SSL)
+
Un protocole créé par Netscape Communications Corporation pour + l'authentification et le chiffrement généraux des communications dans les + réseaux TCP/IP. L'utilisation la plus connue est HTTPS, autrement dit + le Protocole de Transfert Hypertexte (HTTP) au dessus de SSL.
+ Voir : chiffrement SSL/TLS +
+ +
+ Cryptographie Symétrique (Symmetric Cryptography)
+
L'étude et l'application des Algorithmes de chiffrement qui + utilisent une clé secrète unique pour les opérations de chiffrement et de + déchiffrement.
+ Voir : chiffrement SSL/TLS +
+ + +
+ Dégradé pour l'exportation + (Export-Crippled)
+
Diminué en terme de puissance cryptographique (et de sécurité) + afin de respecter les Règles de l'Administration des Exportations + des Etats-Unis (Export Administration Regulations ou EAR). + Les logiciels de cryptographie dégradés pour l'exportation sont limités + à une clé de petite taille, et produisent un + Texte crypté qui peut en général être décrypté + par force brute.
+ Voir : chiffrement SSL/TLS +
+ + +
Demande de signature de certificat + (Certificate Signing Request) + (CSR)
+
La soumission d'un certificat + non signé à une Autorité de + certification, qui le signe avec la Clé privée de leur + Certificat de CA. Une fois le CSR signé, il devient un vrai + certificat.
+ Voir : chiffrement SSL/TLS +
+ +
Directive
+
Une commande de configuration qui contrôle un ou plusieurs aspects du + comportement d'Apache. Les directives sont placées dans le Fichier de configuration
+ Voir : Index des directives +
+ +
Directive de configuration + (Configuration Directive)
+
Voir : Directive
+ +
En-tête (Header)
+
La partie de la requête et de la réponse + HTTP qui est envoyée avant le contenu + proprement dit, et contient des méta-informations décrivant le contenu. +
+ +
Expression Rationnelle + (Regular Expression) + (Regex)
+
Une méthode pour décrire un modèle sous forme de texte - par exemple, + "tous les mots qui commencent par la lettre A" ou "tous les numéros de + téléphone à 10 chiffres" ou encore "Toutes les phrases contenant 2 virgules, + et aucun Q majuscule". Les expressions rationnelles sont très utiles dans + Apache car elles vous permettent d'appliquer certains attributs à des + ensembles de fichiers ou ressources avec une grande flexibilité + - par exemple, tous les fichiers .gif et .jpg situés dans tout répertoire + nommé "images", pourraient être enregistrés comme + "/images/.*(jpg|gif)$". Apache utilise les Expressions + Rationnelles Compatibles avec Perl fournies par la librairie PCRE. +
+ +
+ Fichier de configuration + (Configuration File)
+
Un fichier texte contenant des + Directives + qui contrôlent la configuration d'Apache.
+ Voir : Fichiers de configuration +
+ +
Filtre (Filter)
+
Un traitement appliqué aux données envoyées ou reçues par le serveur. + Les filtres en entrée traitent les données envoyées au serveur par le + client, alors que les filtres en sortie traitent les documents sur le + serveur avant qu'ils soient envoyés au client. + Par exemple, le filtre en sortie + INCLUDES + traite les documents pour les + Server Side Includes (Inclusions côté Serveur) + .
+ Voir : Filtres +
+ +
Gestionnaire (Handler)
+
Une représentation interne à Apache de l'action à entreprendre + quand un fichier est appelé. En général, les fichiers ont des gestionnaires + implicites, basés sur le type de fichier. Normalement, tous les + fichiers sont directement servis par le serveur, mais certains + types de fichiers sont "gérés" séparément. Par exemple, le gestionnaire + cgi-script désigne les fichiers qui doivent être traités + comme CGIs.
+ Voir : Utilisation des gestionnaires d'Apache +
+ +
Hachage (Hash)
+
Un algorithme mathématique à sens unique, irréversible, générant une + chaîne de longueur fixe à partir d'une autre chaîne de longueur quelconque. + Des chaînes différentes en entrée vont normalement produire des chaînes + différentes en sortie (selon la fonction de hachage). +
+ +
Hébergement Virtuel + (Virtual Hosting)
+
Servir des sites web multiples en utilisant une seule instance d'Apache. + Les Hôtes virtuels basés sur IP différencient les sites web en se + basant sur leur adresse IP, alors que les + Hôtes virtuels basés sur le nom utilisent uniquement le nom d'hôte + et peuvent en conséquence héberger de nombreux sites avec la même + adresse IP.
+ Voir la Documentation des Hôtes Virtuels d'Apache +
+ + +
.htaccess
+
Un fichier de configuration + placé à un certain niveau de l'arborescence du site web, et appliquant des + directives de configuration au + répertoire dans lequel il est placé, ainsi qu'à tous ses sous-répertoires. + En dépit de son nom, ce fichier peut contenir pratiquement tout type de + directive, et pas seulement des directives de contrôle d'accès.
+ Voir : Fichiers de configuration +
+ +
httpd.conf
+
Le fichier de configuration + principal d'Apache. Sa localisation par défaut est + /usr/local/apache2/conf/httpd.conf, mais ceci peut être + changé en utilisant des options de compilation ou d'exécution.
+ Voir : Fichiers de configuration +
+ +
HTTPS
+
Le Protocole de Transfert Hypertexte (Sécurisé), le mécanisme de + communication cryptée standard sur le World Wide Web. + Il s'agit en fait de HTTP au dessus de + SSL.
+ Voir : chiffrement SSL/TLS +
+ +
Identificateur de Ressource Uniformisé + (Uniform Resource Identifier) + (URI)
+
Une chaîne de caractères compacte servant à identifier une ressource + abstraite ou physique. Elle est formellement définie par la RFC 2396. Les URIs + utilisées sur le world-wide web sont souvent appelées URLs. +
+ +
+ Inclusions Côté Serveur + (Server Side Includes) (SSI) +
+
Une technique permettant d'englober des directives de traitement dans + des fichiers HTML.
+ Voir : Introduction aux Inclusions Côté Serveur +
+ +
+Interface commune avec les programmes externes +(Common Gateway Interface) + (CGI)
+
La définition standard d'une interface entre un serveur web et un + programme externe pour permettre à ce dernier de traiter des requêtes. + L'interface a été initialement définie par NCSA mais il + existe aussi le projet + RFC project.
+ Voir : Contenu dynamique avec CGI +
+ + +
Bibliothèques pour la portabilité d'Apache + (Apache Portable Runtime) (APR)
+
Un jeu de bibliothèques qui fournit la plupart des interfaces de base + entre le serveur et le système d'exploitation. APR est développé + parallèlement au serveur HTTP Apache comme projet indépendant.
+ Voir : Apache Portable Runtime + Project +
+
+Localisation de Ressource Uniformisée +(Uniform Resource Locator) + (URL)
+
Le nom/adresse d'une ressource sur l'Internet. Il s'agit du terme + informel commun pour ce qui est formellement défini comme + Identificateur de Ressource Uniformisé. + Les URLs sont généralement construites selon un schéma, comme + http ou + https, un nom d'hôte, et un chemin. Une URL pour cette page + pourrait être + http://httpd.apache.org/docs/&httpd.docs;/glossary.html. +
+ + +
Mandataire (Proxy)
+
Un serveur intermédiaire qui se situe entre le client et le + serveur d'origine. + Il prend en compte les requêtes des clients, les transmet au serveur + d'origine, puis renvoie la réponse du serveur d'origine au client. + Si plusieurs clients demandent le même contenu, le mandataire peut l'extraire + de son cache, plutôt que le demander au serveur d'origine + à chaque fois, ce qui réduit le temps de réponse.
+ Voir : mod_proxy +
+ +
Mandataire inverse + (Reverse Proxy)
+
Un serveur mandataire qui est vu du client + comme un serveur d'origine. Ceci peut s'avérer utile pour + dissimuler le serveur d'origine réel au client pour des raisons de sécurité, + ou pour répartir la charge. +
+ +
Méthode (Method)
+
Dans le contexte HTTP, une action à + effectuer sur une ressource spécifiée dans la ligne de requête + par le client. Parmi les méthodes disponibles dans HTTP, on trouve + GET, POST, + et PUT. +
+ +
Module
+
Une partie indépendante d'un programme. De nombreuses fonctionnalités + d'Apache sont fournies par des modules que vous pouvez choisir d'inclure + ou d'exclure. Les modules qui sont compilés dans le binaire + httpd sont appelés modules statiques, alors + que les modules qui existent séparément et peuvent être chargés + optionnellement à l'exécution sont appelés + modules dynamiques ou DSOs. + Les modules qui sont inclus par défaut sont appelés + modules de base. De nombreux modules disponibles pour Apache + ne se trouvent pas dans l'archive + du Serveur HTTP Apache . Il sont appelés + modules tiers.
+ Voir : Index des modules +
+ +
Mot de Passe (Pass Phrase)
+
Le mot ou la phrase qui protège les fichiers de clés privées. + Il empêche les utilisateurs non autorisés de les déchiffrer. En général, + il s'agit simplement de la clé secrète de chiffrement/déchiffrement + utilisée pour les Algorithmes de chiffrement.
+ Voir : chiffrement SSL/TLS +
+ +
Nom de domaine entièrement qualifié + (Fully-Qualified Domain-Name) + (FQDN)
+
Le nom unique d'une entité du réseau, comprenant un nom d'hôte et un + nom de domaine qui peuvent être résolus en une adresse IP. Par exemple, + www est un nom d'hôte, example.com est un nom + de domaine, et www.example.com est un nom de domaine + entièrement qualifié. +
+ +
+ Nombre Magique des Modules + (Module Magic Number) + (MMN)
+
Le Nombre Magique des Modules est une constante définie dans le code + source d'Apache et associée à la compatibilité binaire des modules. + Sa valeur est modifiée quand des structures internes d'Apache, des appels + de fonctions et d'autres parties significatives de l'API sont modifiées + de telle façon que la compatibilité binaire ne peut plus être garantie. + En cas de changement de MMN, tous les modules tiers doivent être au + moins recompilés, et parfois même légèrement modifiés afin de pouvoir + fonctionner avec la nouvelle version d'Apache. +
+ +
+ Objet Dynamique Partagé (Dynamic Shared Object) + (DSO)
+
Modules compilés en dehors du binaire + Apache httpd et qui peuvent être + chargés à la demande.
+ Voir : Support des objets dynamiques partagés +
+ +
OpenSSL
+
L'ensemble d'outils Open Source pour SSL/TLS
+ Voir http://www.openssl.org/# +
+ +
+ Outil de gestion des extensions Apache + (APache eXtension Tool) + (apxs)
+
Un script Perl qui aide à la compilation des sources de module sous forme d'Objets Dynamiques Partagés + (Dynamic Shared Objects ou + DSOs) et facilite leur installation + dans le serveur Web Apache.
+ Voir : Page de manuel : apxs +
+ +
Plein Texte (Plaintext)
+
Le texte non chiffré.
+ + + +
Protocole de Transfert Hypertexte + (HyperText Transfer Protocol) + (HTTP)
+
Le protocole de transmission standard utilisé sur le World Wide Web. + Apache implémente la version 1.1 du protocole, référencée comme HTTP/1.1 et + définie par la + RFC 2616. +
+ +
Résumé de message + (Message Digest)
+
Un hachage du message, qui peut être utilisé pour vérifier + que son contenu n'a pas été altéré durant le transfert.
+ Voir : chiffrement SSL/TLS +
+ +
+ Sécurité de la couche Transport + (Transport Layer Security) + (TLS)
+
Le protocole successeur de SSL, créé par l'Internet Engineering Task + Force (IETF) pour l'authentification et le chiffrement généraux des + communications dans les réseaux TCP/IP. TLS version 1 est pratiquement + identique à SSL version 3.
+ Voir : chiffrement SSL/TLS +
+ +
Session
+
Les informations sur le contexte d'une communication en général.
+ +
Signature numérique + (Digital Signature)
+
Un bloc de texte crypté qui valide un certificat ou un autre fichier. + Une Autorité de certification + crée une signature en générant une empreinte de la Clé publique + fournie avec le Certificat; la CA chiffre ensuite l'empreinte + avec sa propre Clé privée. Seule la clé publique de la CA + peut décrypter la signature, ce qui permet de vérifier que la CA a bien + authentifié l'entité du réseau qui possède le + Certificat.
+ Voir : chiffrement SSL/TLS +
+ +
SSLeay
+
La bibliothèque originelle d'implémentation de SSL/TLS développée par + Eric A. Young +
+ +
Texte crypté +(Ciphertext)
+
Le résultat du passage d'un document + Plaintext (Plein texte) par un + Cipher.
+ Voir : chiffrement SSL/TLS +
+ +
Type MIME (MIME-type)
+
Une méthode pour décrire le type de document transmis. Son nom + vient du fait que son format est issu des Multipurpose + Internet Mail Extensions (Extensions Multi-usages de la + Messagerie par Internet) . Il comprend un type majeur et un type + mineur, séparés par un slash (barre oblique). On trouve + entre autres types text/html, + image/gif, et application/octet-stream. Dans + HTTP, le type MIME est transmis dans l' + en-tête Content-Type.
+ Voir : mod_mime +
+ + +
+ Variable d'environnement + (Environment Variable) (env-variable)
+
Ce sont des variables nommées gérées par le shell du système + d'exploitation, et servant au stockage d'informations et à la + communication entre les programmes. Apache possède aussi des variables + internes considérées comme variables d'environnement, mais stockées dans + des structures internes à Apache, et non dans l'environnement + du shell.
+ Voir : Les variables d'environnement dans Apache +
+ +
X.509
+
Une norme de certificat d'authentification recommandée par l'International + Telecommunication Union (ITU-T) et utilisée pour + l'authentification SSL/TLS.
Voir : chiffrement SSL/TLS +
+
+
+
+ + diff --git a/docs/manual/glossary.xml.meta b/docs/manual/glossary.xml.meta index de9d67ab631..c0c45d99191 100644 --- a/docs/manual/glossary.xml.meta +++ b/docs/manual/glossary.xml.meta @@ -9,6 +9,7 @@ de en es + fr ko diff --git a/docs/manual/index.html.en b/docs/manual/index.html.en index 3cbd41a19cb..a647ec75f7e 100644 --- a/docs/manual/index.html.en +++ b/docs/manual/index.html.en @@ -26,8 +26,8 @@ Documentation  en  |  es  |  fr  | - ja  | - ko  | + ja  | + ko  |  pt-br 

@@ -94,8 +94,8 @@ Documentation  en  |  es  |  fr  | - ja  | - ko  | + ja  | + ko  |  pt-br