From 142f6724f9c7a43486808517784f6ffa5a4c206e Mon Sep 17 00:00:00 2001 From: Lucien Gentis Date: Tue, 17 Jul 2018 12:57:33 +0000 Subject: [PATCH] Rebuild after adding new files. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1836111 13f79535-47bb-0310-9956-ffa450edef68 --- docs/manual/howto/reverse_proxy.html | 4 + docs/manual/howto/reverse_proxy.html.fr | 381 ++++++ docs/manual/howto/reverse_proxy.xml.meta | 1 + docs/manual/mod/allmodules.xml.fr | 16 +- docs/manual/mod/index.html.fr | 26 +- docs/manual/mod/mod_authnz_fcgi.html | 4 + docs/manual/mod/mod_authnz_fcgi.html.fr | 588 ++++++++++ docs/manual/mod/mod_authnz_fcgi.xml.meta | 1 + docs/manual/mod/mod_brotli.html | 4 + docs/manual/mod/mod_brotli.html.fr | 360 ++++++ docs/manual/mod/mod_brotli.xml.meta | 1 + docs/manual/mod/mod_http2.html | 4 + docs/manual/mod/mod_http2.html.fr | 1031 +++++++++++++++++ docs/manual/mod/mod_http2.xml.meta | 1 + docs/manual/mod/mod_proxy_hcheck.html | 4 + docs/manual/mod/mod_proxy_hcheck.html.fr | 297 +++++ docs/manual/mod/mod_proxy_hcheck.xml.meta | 1 + docs/manual/mod/mod_proxy_http2.html | 4 + docs/manual/mod/mod_proxy_http2.html.fr | 155 +++ docs/manual/mod/mod_proxy_http2.xml.meta | 1 + docs/manual/mod/mod_proxy_wstunnel.html | 4 + docs/manual/mod/mod_proxy_wstunnel.html.fr | 101 ++ docs/manual/mod/mod_proxy_wstunnel.xml.meta | 1 + docs/manual/mod/mod_version.html | 4 + docs/manual/mod/mod_version.html.fr | 180 +++ docs/manual/mod/mod_version.xml.fr | 5 +- docs/manual/mod/mod_version.xml.meta | 1 + docs/manual/mod/mod_watchdog.html | 4 + docs/manual/mod/mod_watchdog.html.fr | 108 ++ docs/manual/mod/mod_watchdog.xml.meta | 1 + docs/manual/mod/quickreference.html.fr | 76 +- docs/manual/programs/log_server_status.html | 4 + .../manual/programs/log_server_status.html.fr | 89 ++ .../programs/log_server_status.xml.meta | 1 + docs/manual/programs/split-logfile.html | 4 + docs/manual/programs/split-logfile.html.fr | 92 ++ docs/manual/programs/split-logfile.xml.meta | 1 + docs/manual/programs/suexec.html | 4 + docs/manual/programs/suexec.html.fr | 96 ++ docs/manual/programs/suexec.xml.meta | 1 + 40 files changed, 3605 insertions(+), 56 deletions(-) create mode 100644 docs/manual/howto/reverse_proxy.html.fr create mode 100644 docs/manual/mod/mod_authnz_fcgi.html.fr create mode 100644 docs/manual/mod/mod_brotli.html.fr create mode 100644 docs/manual/mod/mod_http2.html.fr create mode 100644 docs/manual/mod/mod_proxy_hcheck.html.fr create mode 100644 docs/manual/mod/mod_proxy_http2.html.fr create mode 100644 docs/manual/mod/mod_proxy_wstunnel.html.fr create mode 100644 docs/manual/mod/mod_version.html.fr create mode 100644 docs/manual/mod/mod_watchdog.html.fr create mode 100644 docs/manual/programs/log_server_status.html.fr create mode 100644 docs/manual/programs/split-logfile.html.fr create mode 100644 docs/manual/programs/suexec.html.fr diff --git a/docs/manual/howto/reverse_proxy.html b/docs/manual/howto/reverse_proxy.html index a72ae2e666..1daf1b6bd3 100644 --- a/docs/manual/howto/reverse_proxy.html +++ b/docs/manual/howto/reverse_proxy.html @@ -3,3 +3,7 @@ URI: reverse_proxy.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: reverse_proxy.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/howto/reverse_proxy.html.fr b/docs/manual/howto/reverse_proxy.html.fr new file mode 100644 index 0000000000..16f7ec31ad --- /dev/null +++ b/docs/manual/howto/reverse_proxy.html.fr @@ -0,0 +1,381 @@ + + + + + +Guide de configuration d'un mandataire inverse - Serveur HTTP Apache Version 2.4 + + + + + + + +
<-
+
+Apache > Serveur HTTP > Documentation > Version 2.4 > Recettes / Tutoriels

Guide de configuration d'un mandataire inverse

+
+

Langues Disponibles:  en  | + fr 

+
+ +

En plus de ses fonctions de serveur web "basique", à savoir fournir du + contenu statique et dynamique à l'utilisateur, Apache httpd (comme la + plupart des autres serveurs web) peut aussi assurer les fonctions de serveur + mandataire inverse, connu aussi sous le nom de serveur "passerelle".

+ +

Dans un tel scénario, httpd ne génère et n'héberge pas lui-même les + données, le contenu étant en général obtenu à partir d'un ou plusieurs serveurs + d'arrière-plan qui n'ont normalement aucune connexion directe avec le réseau + externe. Lorsque httpd reçoit une requête en provenance d'un client, la + requête proprement dite est mandatée vers un de ces serveurs + d'arrière-plan qui traite la requête, génère le contenu et l'envoie à httpd, + ce dernier générant la véritable réponse HTTP à destination du client.

+ +

De nombreuses raisons peuvent vous motiver à utiliser cette + fonctionnalité, mais elles sont souvent du domaine de la sécurité, de + la haute disponibilité, de la répartition de charge et de + l'authentification/autorisation centralisée. Il est alors indispensable que + l'organisation, la conception et l'architecture de l'infrastructure + d'arrière-plan (les serveurs qui traitent au sens propre les requêtes) soient + isolées et protégées de l'extérieur ; vu du client, le serveur mandataire + inverse est le seul serveur accessible pouvant lui fournir du + contenu.

+ +

Voici un exemple typique d'implémentation de cette fonctionnalité :

+

reverse-proxy-arch

+ +
+ +
top
+
top
+
+

Mandatement inverse simple

+ + +

+ La directive ProxyPass permet de + rediriger les requêtes entrantes vers un serveur d'arrière-plan (ou un + cluster de serveurs plus connu sous le nom de groupe + Balancer). Dans cet exemple le plus simple, toutes les + requêtes ("/") sont redirigées vers un serveur d'arrière-plan + unique : +

+ +
ProxyPass "/"  "http://www.example.com/"
+ + +

+ Pour être sur que cette redirection soit effectuée et que les en-têtes + Location: générés par le serveur d'arrière-plan soient + modifiés pour pointer vers le mandataire inverse, et non vers le serveur + d'arrière-plan, la directive ProxyPassReverse est souvent requise : +

+ +
ProxyPass "/"  "http://www.example.com/"
+ProxyPassReverse "/"  "http://www.example.com/"
+ + +

Seules des URIs spécifiques peuvent être mandatées, comme le montre + l'exemple suivant :

+ +
ProxyPass "/images"  "http://www.example.com/"
+ProxyPassReverse "/images"  "http://www.example.com/"
+ + +

Dans l'exemple précédent, si le chemin d'une requête commence par + /images, elle sera redirigée vers le serveur d'arrière-plan + spécifié ; dans le cas contraire, elle sera traitée localement. +

+
top
+
+

Clusters et Balancers

+ + +

+ Utiliser un serveur d'arrière-plan unique n'est cependant pas une solution + idéale car ce dernier peut devenir indisponible ou surchargé, et le + mandatement inverse vers ce serveur ne présente alors plus aucun avantage. + La solution réside dans la définition d'un groupe de serveurs + d'arrière-plan qui vont se partager le traitement des requêtes via un + mécanisme de répartition de charge et de gestion des indisponibilités pris + en charge par le mandataire. Ce groupe de répartition est plus connu sous le nom de + cluster, mais dans la terminologie d'Apache httpd, on utilise + plutôt le terme de balancer. Un balancer se définit en + utilisant les directives <Proxy> et BalancerMember comme suit : +

+ +
<Proxy balancer://myset>
+    BalancerMember http://www2.example.com:8080
+    BalancerMember http://www3.example.com:8080
+    ProxySet lbmethod=bytraffic
+</Proxy>
+
+ProxyPass "/images/"  "balancer://myset/"
+ProxyPassReverse "/images/"  "balancer://myset/"
+ + +

+ Le protocole balancer:// indique à httpd que l'on souhaite + créer un balancer nommé myset. Ce balancer comporte deux serveurs + d'arrière-plan référencés dans la terminologie httpd sous le nom de + BalancerMembers. Avec cet exemple, toute requête dont le chemin + commence par /images sera mandatée vers un des deux + serveurs d'arrière-plan. La directive ProxySet définit ici pour le balancer + myset un algorithme de + répartition de charge basé sur le trafic entrées/sorties. +

+ +

Remarque

+

+ Les BalancerMembers sont aussi souvent référencés sous le terme + workers. +

+
+ +
top
+
+

Configuration du Balancer et des BalancerMembers

+ + +

+ Vous pouvez configurer de manière détaillée les balancers et + workers via les nombreux paramètres de la directive ProxyPass. Par exemple, si vous souhaitez + que http://www3.example.com:8080 traite avec un facteur 3 le + trafic avec un timeout d'une seconde, utilisez la configuration suivante : +

+ +
<Proxy balancer://myset>
+    BalancerMember http://www2.example.com:8080
+    BalancerMember http://www3.example.com:8080 loadfactor=3 timeout=1
+    ProxySet lbmethod=bytraffic
+</Proxy>
+
+ProxyPass "/images"  "balancer://myset/"
+ProxyPassReverse "/images"  "balancer://myset/"
+ + +
top
+
+

Gestion des indisponibilités (Failover)

+ + +

+ Vous pouvez aussi définir finement des scénarios pour les cas + d'indisponibilité d'un ou plusieurs serveurs d'arrière-plan en spécifiant + quels serveurs doivent alors prendre le relai. Dans l'exemple suivant, + trois scénarios sont envisagés : +

+
    +
  1. + http://spare1.example.com:8080 et + http://spare2.example.com:8080 ne sont sollicités que si + http://www2.example.com:8080 ou + http://www3.example.com:8080 est indisponible (un serveur + de remplacement sera utilisé à la place d'un membre indisponible du même + jeu de serveurs cibles). +
  2. +
  3. + http://hstandby.example.com:8080 n'est sollicité que si + tous les autres serveurs cibles du jeu de serveurs 0 sont + indisponibles. +
  4. +
  5. + Les serveurs http://bkup1.example.com:8080 et + http://bkup2.example.com:8080 du jeu 1 ne seront sollicités que si + tous les serveurs du jeu 0, tous les serveurs de + remplacement et tous les serveurs de standby sont indisponibles. +
  6. +
+

+ Il est ainsi possible de définir un ou plusieurs serveurs de remplacement + ou de standby pour chaque jeu de serveurs du répartiteur de charge. +

+ +
<Proxy balancer://myset>
+    BalancerMember http://www2.example.com:8080
+    BalancerMember http://www3.example.com:8080 loadfactor=3 timeout=1
+    BalancerMember http://spare1.example.com:8080 status=+R
+    BalancerMember http://spare2.example.com:8080 status=+R
+    BalancerMember http://hstandby.example.com:8080 status=+H
+    BalancerMember http://bkup1.example.com:8080 lbset=1
+    BalancerMember http://bkup2.example.com:8080 lbset=1
+    ProxySet lbmethod=byrequests
+</Proxy>
+
+ProxyPass "/images/"  "balancer://myset/"
+ProxyPassReverse "/images/"  "balancer://myset/"
+ + +

+ Les serveurs de remplacement à chaud remplacent les serveurs indisponibles + du même jeu de serveurs du répartiteur de charge. Un serveur est + considéré comme indisponible s'il est en maintenance, arrêté ou en erreur. + Les serveurs de standby à chaud sont utilisés si tous les serveurs et + serveurs de remplacement du jeu de serveurs du répartiteur de charge sont + indisponibles. Les jeux de serveurs du répartiteur de charge (avec leurs + serveurs de standby et de remplacement à chaud respectifs) sont toujours + sollicités dans l'ordre du plus bas lbset vers le plus haut. +

+ +
top
+
+

Gestion du répartiteur de charge

+ + +

+ L'application balancer-manager fournie avec le mandataire inverse + d'Apache httpd en est un des outils les plus utiles. Comme + mod_status, balancer-manager affiche la + configuration et l'activité actuelles des balancers actifs. L'affichage de + ces informations n'est cependant pas sa seule fonction ; il permet aussi de + modifier la plupart d'entre elles et même d'ajouter des membres au groupe + de répartition de charge en temps réel. Pour activer ces fonctionnalités, + vous devez ajouter les lignes suivantes à votre fichier de configuration : +

+ +
<Location "/balancer-manager">
+    SetHandler balancer-manager
+    Require host localhost
+</Location>
+ + +

Avertissement

+

N'activez le balancer-manager que si vous avez déjà sécurisé votre serveur. + Assurez-vous en particulier que l'accès à l'URL soit fortement restreint.

+
+ +

+ Lorsque vous accédez au serveur mandataire avec une adresse du style + http://rproxy.example.com/balancer-manager/, la page suivante + s'affiche : +

+

balancer-manager page

+ +

+ Ce formulaire permet à l'administrateur de modifier certains paramètres, + de désactiver ou d'ajouter certains serveurs d'arrière-plan, et de + modifier les règles de répartition de charge. Par exemple, si on clique + sur le répartiteur, la page suivante s'affiche : +

+

balancer-manager page

+ +

+ Si on clique sur un membre du groupe de répartition de charge, la page + suivante s'affiche : +

+

balancer-manager page

+ +

+ Si vous souhaitez que ces modifications soient conservées après un + redémarrage du serveur, assurez-vous que la directive BalancerPersist soit définie à On. +

+ +
top
+
+

Vérification dynamique du bon fonctionnement d'un serveur + d'arrière-plan

+ + +

+ Avant que le mandataire httpd ne fasse appel à un serveur d'arrière-plan, il + peut "tester" si ce dernier est disponible en définissant le + paramètre ping de ce serveur via la directive ProxyPass. Cependant, il est souvent plus + judicieux de vérifier le bon fonctionnement d'un serveur hors + bande et de manière dynamique via le module + mod_proxy_hcheck d'Apache httpd. +

+ +
top
+
+

Drapeaux d'état d'un membre du groupe de répartition de charge

+ + +

+ balancer-manager permet d'afficher et de modifier l'état d'un + membre du groupe de répartition de charge. Les différents états et leurs + significations sont les suivants : +

+ + + + + + + + + + + + +
DrapeauSigleDescription
 OkLe serveur est disponible
 InitLe serveur a été initialisé
DDisLe serveur est + désactivé et n'accepte aucune requête ; il sera retesté automatiquement.
SStopLe serveur a été + arrêté par l'administrateur ; il n'accepte aucune requête et il ne sera + pas retesté automatiquement.
IIgnLes erreurs + concernant ce serveur sont ignorées et il sera donc toujours considéré + comme disponible.
RSparLe serveur cible sert de remplaçant à + chaud. Lorsqu'un serveur cible avec un lbset donné est inutilisable + (maintenance, arrêt, en erreur, etc...), un serveur de remplacement à + chaud libre de même lbset sera utilisé à sa place. Les remplaçants à + chaud permettent de s'assurer qu'un nombre déterminé de serveurs cibles + sera toujours disponible pour un répartiteur de charge.
HStbyLe serveur est en + mode hot-standby et ne sera donc utilisé que si aucun autre serveur ou + serveur de remplacement n'est disponible dans le jeu de serveurs du + répartiteur de charge.
EErrLe serveur est en + erreur, en général suite à un test préalable à une requête ; aucune + requête ne lui sera soumise, mais il sera retesté en fonction de la + valeur de son paramètre retry.
NDrnLe serveur est en + mode drain ; il n'acceptera de requêtes que dans le cadre des sessions + persistantes qui lui sont réservées et ignorera toutes les autres.
CHcFlLe serveur a échoué + au test dynamique de bon fonctionnement et ne sera utilisé que lorsqu'il + aura réussi un test ultérieur.
+
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/howto/reverse_proxy.xml.meta b/docs/manual/howto/reverse_proxy.xml.meta index 3c15cd2277..8cb8970fff 100644 --- a/docs/manual/howto/reverse_proxy.xml.meta +++ b/docs/manual/howto/reverse_proxy.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/mod/allmodules.xml.fr b/docs/manual/mod/allmodules.xml.fr index e97ecf431e..0b9744298d 100644 --- a/docs/manual/mod/allmodules.xml.fr +++ b/docs/manual/mod/allmodules.xml.fr @@ -17,7 +17,7 @@ mod_authn_dbm.xml.fr mod_authn_file.xml.fr mod_authn_socache.xml.fr - mod_authnz_fcgi.xml + mod_authnz_fcgi.xml.fr mod_authnz_ldap.xml.fr mod_authz_core.xml.fr mod_authz_dbd.xml.fr @@ -27,7 +27,7 @@ mod_authz_owner.xml.fr mod_authz_user.xml.fr mod_autoindex.xml.fr - mod_brotli.xml + mod_brotli.xml.fr mod_buffer.xml.fr mod_cache.xml.fr mod_cache_disk.xml.fr @@ -55,7 +55,7 @@ mod_headers.xml.fr mod_heartbeat.xml.fr mod_heartmonitor.xml.fr - mod_http2.xml + mod_http2.xml.fr mod_ident.xml.fr mod_imagemap.xml.fr mod_include.xml.fr @@ -86,13 +86,13 @@ mod_proxy_fcgi.xml.fr mod_proxy_fdpass.xml.fr mod_proxy_ftp.xml.fr - mod_proxy_hcheck.xml + mod_proxy_hcheck.xml.fr mod_proxy_html.xml.fr mod_proxy_http.xml.fr - mod_proxy_http2.xml + mod_proxy_http2.xml.fr mod_proxy_scgi.xml.fr mod_proxy_uwsgi.xml - mod_proxy_wstunnel.xml + mod_proxy_wstunnel.xml.fr mod_ratelimit.xml.fr mod_reflector.xml.fr mod_remoteip.xml.fr @@ -121,9 +121,9 @@ mod_unixd.xml.fr mod_userdir.xml.fr mod_usertrack.xml.fr - mod_version.xml + mod_version.xml.fr mod_vhost_alias.xml.fr - mod_watchdog.xml + mod_watchdog.xml.fr mod_xml2enc.xml.fr mpm_common.xml.fr event.xml.fr diff --git a/docs/manual/mod/index.html.fr b/docs/manual/mod/index.html.fr index 4860524b66..9b9710196e 100644 --- a/docs/manual/mod/index.html.fr +++ b/docs/manual/mod/index.html.fr @@ -97,8 +97,8 @@ DBM texte
mod_authn_socache
Gère un cache des données d'authentification pour diminuer la charge des serveurs d'arrière-plan
-
mod_authnz_fcgi
Allows a FastCGI authorizer application to handle Apache -httpd authentication and authorization
+
mod_authnz_fcgi
Permet à une application d'autorisation FastCGI de gérer +l'authentification et l'autorisation httpd.
mod_authnz_ldap
Permet d'utiliser un annuaire LDAP pour l'authentification HTTP de base.
mod_authz_core
Autorisation basique
@@ -116,8 +116,7 @@ fichiers
mod_autoindex
Génère automatiquement des index de répertoires d'une manière similaire à la commande Unix ls, ou à la commande shell Win32 dir
-
mod_brotli
Compress content via Brotli before it is delivered to the -client
+
mod_brotli
Compression du contenu via Brotli avant sa livraison au client
mod_buffer
Support de la mise en tampon des requêtes
mod_cache
Filtre de mise en cache HTTP conforme à la RFC 2616
mod_cache_disk
Module de stockage sur disque pour le filtre de mise en @@ -166,7 +165,7 @@ contexte
HTTP
mod_heartbeat
Envoie des messages d'état au mandataire frontal
mod_heartmonitor
Moniteur centralisé pour les serveurs d'origine mod_heartbeat
-
mod_http2
Support for the HTTP/2 transport layer
+
mod_http2
Support de la couche transport HTTP/2
mod_ident
Recherche d'identité conformément à la RFC 1413
mod_imagemap
Traitement des cartes des zones interactives d'une image @@ -229,20 +228,19 @@ dynamique inverse de masse
à mod_proxy
mod_proxy_ftp
Module fournissant le support FTP à mod_proxy
-
mod_proxy_hcheck
Dynamic health check of Balancer members (workers) for -mod_proxy
+
mod_proxy_hcheck
Check up dynamique des membres du groupe de répartition de charge +(équipiers) pour mod_proxy
mod_proxy_html
Réécrit les liens HTML afin de s'assurer qu'ils soient bien adressables depuis les réseaux des clients dans un contexte de mandataire.
mod_proxy_http
Module fournissant le support HTTP à mod_proxy
-
mod_proxy_http2
HTTP/2 support module for -mod_proxy
+
mod_proxy_http2
Support de HTTP/2 pour mod_proxy
mod_proxy_scgi
Module fournissant le support de la passerelle SCGI à mod_proxy
mod_proxy_uwsgi
UWSGI gateway module for mod_proxy
-
mod_proxy_wstunnel
Websockets support module for -mod_proxy
+
mod_proxy_wstunnel
Module pour mod_proxy supportant les +websockets
mod_ratelimit
Limitation de la bande passante pour les clients
mod_reflector
Renvoie un corps de requête comme réponse via la pile de filtres en sortie.
@@ -295,11 +293,11 @@ famille Unix. Journalisation Clickstream des liens parcourus par un utilisateur sur un site -
mod_version
Version dependent configuration
+
mod_version
Configuration dépendant de la version
mod_vhost_alias
Permet de configurer dynamiquement l'hébergement virtuel de masse
-
mod_watchdog
provides infrastructure for other modules to periodically run - tasks
+
mod_watchdog
Fournit une infrastructure permettant à d'autres modules +d'exécuter des tâches périodiques.
mod_xml2enc
Support avancé de l'internationalisation et des jeux de caractères pour les modules de filtrage basés sur libxml2
diff --git a/docs/manual/mod/mod_authnz_fcgi.html b/docs/manual/mod/mod_authnz_fcgi.html index b45dc4a8ae..36d56d1914 100644 --- a/docs/manual/mod/mod_authnz_fcgi.html +++ b/docs/manual/mod/mod_authnz_fcgi.html @@ -3,3 +3,7 @@ URI: mod_authnz_fcgi.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: mod_authnz_fcgi.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/mod/mod_authnz_fcgi.html.fr b/docs/manual/mod/mod_authnz_fcgi.html.fr new file mode 100644 index 0000000000..f5e28992e5 --- /dev/null +++ b/docs/manual/mod/mod_authnz_fcgi.html.fr @@ -0,0 +1,588 @@ + + + + + +mod_authnz_fcgi - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+
+Apache > Serveur HTTP > Documentation > Version 2.4 > Modules
+
+

Module Apache mod_authnz_fcgi

+
+

Langues Disponibles:  en  | + fr 

+
+ + + + +
Description:Permet à une application d'autorisation FastCGI de gérer +l'authentification et l'autorisation httpd.
Statut:Extension
Identificateur de Module:authnz_fcgi_module
Fichier Source:mod_authnz_fcgi.c
Compatibilité:Disponible à partir de la version 2.4.10 du serveur HTTP +Apache
+

Sommaire

+ +

Ce module permet aux applications d'autorisation FastCGI + d'authentifier les utilisateurs et de contrôler leur accès aux + ressources. Il supporte les systèmes d'autorisation FastCGI + génériques qui participent en une seule phase à l'authentification + et à l'autorisation, ainsi que les processus d'authentification et + d'autorisation spécifiques à Apache httpd qui interviennent en une + ou plusieurs phases.

+ +

Les processus d'autorisation FastCGI peuvent authentifier un + utilisateur via son identificateur et son mot de passe comme dans le + processus d'authentification basique, ou via un mécanisme + arbitraire.

+
+ +
top
+
+

Modes d'invocation

+ +

Les modes d'invocation des processus d'autorisation FastCGI que + ce module supporte se distinguent par deux caractéristiques : le + type et le mécanisme d'authentification.

+ +

Le Type est simplement authn pour + l'authentification, authz pour l'autorisation et + authnz l'authentification et l'autorisation.

+ +

Le mécanisme d'authentification fait référence aux + mécanismes d'authentification et aux phases de traitement de la + configuration de Apache httpd, et peut être + AuthBasicProvider, Require, ou + check_user_id. Les deux premiers mécanismes + correspondent aux directives utilisées pour participer aux phases de + traitement appropriées.

+ +

Description de chaque mode:

+ +
+
Type authn, mechanism + AuthBasicProvider
+ +
Dans ce mode, la variable FCGI_ROLE est définie à + AUTHORIZER, et la variable + FCGI_APACHE_ROLE à AUTHENTICATOR. + L'application doit être spécifiée en tant que fournisseur de type + authn via la directive AuthnzFcgiDefineProvider, et + activée via la directive AuthBasicProvider. Lorsqu'elle + est invoquée, l'application est censée authentifier le client à + l'aide de l'identifiant et du mot de passe de l'utilisateur. + Exemple d'application : + +
#!/usr/bin/perl
+use FCGI;
+my $request = FCGI::Request();
+while ($request->Accept() >= 0) {
+    die if $ENV{'FCGI_APACHE_ROLE'} ne "AUTHENTICATOR";
+    die if $ENV{'FCGI_ROLE'}        ne "AUTHORIZER";
+    die if !$ENV{'REMOTE_PASSWD'};
+    die if !$ENV{'REMOTE_USER'};
+
+    print STDERR "This text is written to the web server error log.\n";
+
+    if ( ($ENV{'REMOTE_USER' } eq "foo" || $ENV{'REMOTE_USER'} eq "foo1") &&
+        $ENV{'REMOTE_PASSWD'} eq "bar" ) {
+        print "Status: 200\n";
+        print "Variable-AUTHN_1: authn_01\n";
+        print "Variable-AUTHN_2: authn_02\n";
+        print "\n";
+    }
+    else {
+        print "Status: 401\n\n";
+    }
+}
+ + + Exemple de configuration httpd : +
AuthnzFcgiDefineProvider authn FooAuthn fcgi://localhost:10102/
+<Location "/protected/">
+  AuthType Basic
+  AuthName "Restricted"
+  AuthBasicProvider FooAuthn
+  Require ...
+</Location>
+ +
+ +
Type authz, mechanism + Require
+
Dans ce mode, la variable FCGI_ROLE est définie à + AUTHORIZER et FCGI_APACHE_ROLE à + AUTHORIZER. L'application doit être spécifiée en tant + que fournisseur de type authz via la directive AuthnzFcgiDefineProvider. + Lorsqu'elle est invoquée, l'application est censée contrôler les + accès du client à l'aide de l'identifiant utilisateur et d'autres + données contenues dans la requête. Exemple d'application : +
#!/usr/bin/perl
+use FCGI;
+my $request = FCGI::Request();
+while ($request->Accept() >= 0) {
+    die if $ENV{'FCGI_APACHE_ROLE'} ne "AUTHORIZER";
+    die if $ENV{'FCGI_ROLE'}        ne "AUTHORIZER";
+    die if $ENV{'REMOTE_PASSWD'};
+
+    print STDERR "This text is written to the web server error log.\n";
+
+    if ($ENV{'REMOTE_USER'} eq "foo1") {
+        print "Status: 200\n";
+        print "Variable-AUTHZ_1: authz_01\n";
+        print "Variable-AUTHZ_2: authz_02\n";
+        print "\n";
+    }
+    else {
+        print "Status: 403\n\n";
+    }
+}
+ + + Exemple de configuration httpd : +
AuthnzFcgiDefineProvider authz FooAuthz fcgi://localhost:10103/
+<Location "/protected/">
+  AuthType ...
+  AuthName ...
+  AuthBasicProvider ...
+  Require FooAuthz
+</Location>
+ +
+ +
Type authnz, mechanism + AuthBasicProvider + Require
+ +
Dans ce mode qui supporte le protocole d'autorisation web + server-agnostic FastCGI, la variable FCGI_ROLE est + définie à AUTHORIZER et FCGI_APACHE_ROLE + n'est pas définie. L'application doit être spécifiée en tant que + fournisseur de type authnz via la directive AuthnzFcgiDefineProvider. + L'application est censée assurer l'authentification et + l'autorisation au cours d'une même invocation à l'aide de + l'identifiant et du mot de passe de l'utilisateur et d'autres + données contenues dans la requête. L'invocation de l'application + intervient au cours de la phase d'authentification de l'API Apache + httpd. Si l'application renvoie le code 200, et si le même + fournisseur est invoqué au cours de la phase d'autorisation (via + une directive Require), mod_authnz_fcgi + renverra un code de type success pour la phase d'autorisation sans + invoquer l'application. Exemple d'application : +
#!/usr/bin/perl
+use FCGI;
+my $request = FCGI::Request();
+while ($request->Accept() >= 0) {
+    die if $ENV{'FCGI_APACHE_ROLE'};
+    die if $ENV{'FCGI_ROLE'} ne "AUTHORIZER";
+    die if !$ENV{'REMOTE_PASSWD'};
+    die if !$ENV{'REMOTE_USER'};
+
+    print STDERR "This text is written to the web server error log.\n";
+
+    if ( ($ENV{'REMOTE_USER' } eq "foo" || $ENV{'REMOTE_USER'} eq "foo1") &&
+        $ENV{'REMOTE_PASSWD'} eq "bar" &&
+        $ENV{'REQUEST_URI'} =~ m%/bar/.*%) {
+        print "Status: 200\n";
+        print "Variable-AUTHNZ_1: authnz_01\n";
+        print "Variable-AUTHNZ_2: authnz_02\n";
+        print "\n";
+    }
+    else {
+        print "Status: 401\n\n";
+    }
+}
+ + + Exemple de configuration httpd : +
AuthnzFcgiDefineProvider authnz FooAuthnz fcgi://localhost:10103/
+<Location "/protected/">
+  AuthType Basic
+  AuthName "Restricted"
+  AuthBasicProvider FooAuthnz
+  Require FooAuthnz
+</Location>
+ +
+ +
Type authn, mechanism + check_user_id
+ +
Dans ce mode, la variable FCGI_ROLE est définie à + AUTHORIZER et FCGI_APACHE_ROLE à + AUTHENTICATOR. L'application doit être spécifiée en + tant que fournisseur de type authn via une directive + AuthnzFcgiDefineProvider. La + directive AuthnzFcgiCheckAuthnProvider + permet de l'invoquer. Exemple d'application : +
#!/usr/bin/perl
+use FCGI;
+my $request = FCGI::Request();
+while ($request->Accept() >= 0) {
+    die if $ENV{'FCGI_APACHE_ROLE'} ne "AUTHENTICATOR";
+    die if $ENV{'FCGI_ROLE'} ne "AUTHORIZER";
+
+    # This authorizer assumes that the RequireBasicAuth option of 
+    # AuthnzFcgiCheckAuthnProvider is On:
+    die if !$ENV{'REMOTE_PASSWD'};
+    die if !$ENV{'REMOTE_USER'};
+
+    print STDERR "This text is written to the web server error log.\n";
+
+    if ( ($ENV{'REMOTE_USER' } eq "foo" || $ENV{'REMOTE_USER'} eq "foo1") &&
+        $ENV{'REMOTE_PASSWD'} eq "bar" ) {
+        print "Status: 200\n";
+        print "Variable-AUTHNZ_1: authnz_01\n";
+        print "Variable-AUTHNZ_2: authnz_02\n";
+        print "\n";
+    }
+    else {
+        print "Status: 401\n\n";
+        # If a response body is written here, it will be returned to
+        # the client.
+    }
+}
+ + + Exemple de configuration httpd : +
AuthnzFcgiDefineProvider authn FooAuthn fcgi://localhost:10103/
+<Location "/protected/">
+  AuthType ...
+  AuthName ...
+  AuthnzFcgiCheckAuthnProvider FooAuthn \
+                               Authoritative On \
+                               RequireBasicAuth Off \
+                               UserExpr "%{reqenv:REMOTE_USER}"
+  Require ...
+</Location>
+ +
+ +
+ +
top
+
+

Exemples supplémentaires

+ +
    +
  1. Si votre application supporte séparément les rôles + d'authentification et d'autorisation (AUTHENTICATOR et + AUTHORIZER), vous pouvez définir des fournisseurs + séparés comme suit, même s'ils correspondent à la même application : + +
    AuthnzFcgiDefineProvider authn  FooAuthn  fcgi://localhost:10102/
    +AuthnzFcgiDefineProvider authz  FooAuthz  fcgi://localhost:10102/
    + + + Spécifie le fournisseur authn via la directive + AuthBasicProvider + et le fournisseur authz via la directive + Require: + +
    AuthType Basic
    +AuthName "Restricted"
    +AuthBasicProvider FooAuthn
    +Require FooAuthz
    + +
  2. + +
  3. Si votre application supporte le rôle générique + AUTHORIZER (authentification et autorisation en une + seule invocation), vous pouvez définir un fournisseur unique comme + suit : + +
    AuthnzFcgiDefineProvider authnz FooAuthnz fcgi://localhost:10103/
    + + + Spécifie le fournisseur authnz via les directives + AuthBasicProvider et + Require : + +
    AuthType Basic
    +AuthName "Restricted"
    +AuthBasicProvider FooAuthnz
    +Require FooAuthnz
    + +
  4. +
+
top
+
+

Limitations

+ +

Les fonctionnalités suivantes ne sont pas encore implémentées :

+ +
+
Vérificateur d'accès d'Apache httpd
+
La phase access check de l'API Apache httpd est + distincte des phases d'authentification et d'autorisation. + Certaines autres implémentations de FastCGI supportent cette phase + et lorsque c'est le cas, la variable FCGI_APACHE_ROLE + est définie à ACCESS_CHECKER.
+ +
Redirections (pipes) ou sockets locaux (Unix)
+
Seuls les sockets TCP sont actuellement supportés.
+ +
Support de mod_authn_socache
+
Le support de l'interaction avec mod_authn_socache pour les + applications qui interviennent dans le processus + d'authentification d'Apache httpd serait souhaitable.
+ +
Support de l'authentification de type digest à l'aide de AuthDigestProvider
+
Cette limitation ne sera probablement jamais franchie car il + n'existe aucun flux de données d'autorisation capable de lire dans + un condensé de type hash.
+ +
Gestion des processus applicatifs
+
Cette fonctionnalité restera probablement hors de portée de ce + module. Il faudra donc gérer les processus applicatifs d'une autre + manière ; par exemple, fcgistarter permet de + les démarrer.
+ +
AP_AUTH_INTERNAL_PER_URI
+
Tous les fournisseurs sont actuellement enregistrés en tant + que AP_AUTH_INTERNAL_PER_CONF, ce qui signifie que les + vérifications ne sont pas effectuées pour les + sous-requêtes internes avec la même configuration de contrôle + d'accès que la requête initiale.
+ +
Conversion du jeu de caractères des données de protocole
+
Si mod_authnz_fcgi s'exécute dans un environnement de + compilation EBCDIC, toutes les données de protocole FastCGI sont + écrites en EBCDIC et doivent être disponibles en EBCDIC.
+ +
Plusieurs requêtes pour une connexion
+
Actuellement, la connexion au fournisseur d'autorisation + FastCGI est fermée après chaque phase de traitement. Par exemple, + si le fournisseur d'autorisation gère séparément les phases + authn et authz, deux connexions seront + nécessaires.
+ +
Redirection de certains URIs
+
Les URIs en provenance des clients ne peuvent pas être + redirigés selon une table de redirection, comme avec la directive + ProxyPass utilisée avec les répondeurs + FastCGI.
+ +
+ +
top
+
+

Journalisation

+ +
    +
  1. Les erreurs de traitement sont journalisées à un niveau + error ou supérieur.
  2. +
  3. Les messages envoyés par l'application sont journalisés au + niveau warn.
  4. +
  5. Les messages de deboguage à caractère général sont + journalisés au niveau debug.
  6. +
  7. Les variables d'environnement transmises à l'application + sont journalisées au niveau trace2. La valeur de la + variable REMOTE_PASSWD sera occultée, mais + toute autre donnée sensible sera visible dans le + journal.
  8. +
  9. Toutes les entrées/sorties entre le module et l'application + FastCGI, y compris les variables d'environnement, seront + journalisées au format imprimable et hexadécimal au niveau + trace5. Toutes les données sensibles seront + visibles dans le journal.
  10. +
+ +

La directive LogLevel permet + de configurer un niveau de journalisation spécifique à + mod_authnz_fcgi. Par exemple :

+ +
LogLevel info authnz_fcgi:trace8
+ + +
+
top
+

Directive AuthnzFcgiCheckAuthnProvider

+ + + + + + + +
Description:Permet à une application FastCGI de gérer l'accroche +d'authentification check_authn.
Syntaxe:AuthnzFcgiCheckAuthnProvider provider-name|None +option ...
Défaut:none
Contexte:répertoire
Statut:Extension
Module:mod_authnz_fcgi
+

Cette directive permet de confier à une application FastCGI la + gestion d'une phase spécifique du processus d'authentification ou + d'autorisation.

+ +

Certaines fonctionnalités des fournisseurs d'autorisation FastCGI + nécessitent cette directive en lieu et place de + AuthBasicProvider pour pouvoir être activées :

+ +
    +
  • L'authentification de type autre que basique ; en général, + détermination de l'identifiant utilisateur et renvoi de sa valeur + depuis le fournisseur d'autorisation ; voir l'option + UserExpr ci-dessous
  • +
  • Sélection d'un code de réponse personnalisé ; en cas de + code de réponse autre que 200 en provenance du fournisseur + d'autorisation, c'est ce code qui sera utilisé comme code d'état + de la réponse
  • +
  • Définition du corps d'une réponse autre que 200 ; si le + fournisseur d'autorisation renvoie un corps de réponse avec un + code autre que 200, c'est ce corps de réponse qui sera renvoyé au + client ; la longueur du texte est limitée à 8192 octets
  • +
+ +
+
provider-name
+
C'est le nom du fournisseur défini au préalable via la + directive AuthnzFcgiDefineProvider.
+ +
None
+
Spécifiez None pour désactiver un fournisseur + activé avec cette même directive dans une autre portée, par + exemple dans un répertoire parent.
+ +
option
+
Les options suivantes sont supportées : + +
+
Authoritative On|Off (par défaut On)
+
Cette option permet de définir si l'appel à d'autres + modules est autorisé lorsqu'un fournisseur d'autorisation FastCGI a + été configuré et si la requête échoue.
+ +
DefaultUser id utilisateur
+
Lorsque le fournisseur d'autorisation donne son accord, et + si UserExpr est défini et correspond à une chaîne + vide, (par exemple, si le fournisseur d'autorisation ne renvoie + aucune variable), c'est cette valeur qui sera utilisée comme id + utilisateur par défaut. Cela se produit souvent lorsqu'on se trouve dans + un contexte d'invité, ou d'utilisateur non authentifié ; + les utilisateurs et invités se voient alors attribué un id + utilisateur spécifique qui permettra de se connecter et + d'accéder à certaines ressources.
+ +
RequireBasicAuth On|Off (par défaut Off)
+
Cette option permet de définir si l'authentification + basique est requise avant de transmettre la requête au + fournisseur d'autorisation. Dans l'affirmative, le fournisseur + d'autorisation ne sera invoqué qu'en présence d'un id + utilisateur et d'un mot de passe ; si ces deux éléments ne sont + pas présents, un code d'erreur 401 sera renvoyé
+ +
UserExpr expr (pas de valeur par défaut)
+
Lorsque le client ne fournit pas l'authentification basique + et si le fournisseur d'autorisation détermine l'id utilisateur, + cette expression, évaluée après l'appel au fournisseur + d'autorisation, permet de déterminer l'id utilisateur. Cette + expression se conforme à la syntaxe + ap_expr et doit correspondre à une chaîne de caractères. + Une utilisation courante consiste à référencer la définition + d'une Variable-XXX renvoyée par le + fournisseur d'autorisation via une option du style + UserExpr "%{reqenv:XXX}". Si cette option + est spécifiée, et si l'id utilisateur ne peut pas être définie + via l'expression après une authentification réussie, la requête + sera rejetée avec un code d'erreur 500.
+ +
+
+
+ +
+
top
+

Directive AuthnzFcgiDefineProvider

+ + + + + + + +
Description:Définit une application FastCGI en tant que fournisseur +d'authentification et/ou autorisation
Syntaxe:AuthnzFcgiDefineProvider type provider-name +backend-address
Défaut:none
Contexte:configuration globale
Statut:Extension
Module:mod_authnz_fcgi
+

Cette directive permet de définir une application FastCGI en tant + que fournisseur pour une phase particulière d'authentification ou + d'autorisation.

+ +
+
type
+
Les valeurs de ce paramètre sont authn pour + l'authentification, authz pour l'autorisation, ou + authnz pour un fournisseur d'autorisation générique + FastCGI qui effectue les deux vérifications.
+ +
provider-name
+
Ce paramètre permet d'associer un nom au fournisseur ; ce nom + pourra être utilisé dans des directives comme AuthBasicProvider et + Require.
+ +
backend-address
+
Ce paramètre permet de spécifier l'adresse de l'application + sous la forme fcgi://hostname:port/. Le ou les processus + de l'application doivent être gérés indépendamment comme avec + fcgistarter.
+
+ +
+
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/mod/mod_authnz_fcgi.xml.meta b/docs/manual/mod/mod_authnz_fcgi.xml.meta index 9ce87949f2..0bb1414049 100644 --- a/docs/manual/mod/mod_authnz_fcgi.xml.meta +++ b/docs/manual/mod/mod_authnz_fcgi.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/mod/mod_brotli.html b/docs/manual/mod/mod_brotli.html index dc86057b14..297e9bc578 100644 --- a/docs/manual/mod/mod_brotli.html +++ b/docs/manual/mod/mod_brotli.html @@ -3,3 +3,7 @@ URI: mod_brotli.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: mod_brotli.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/mod/mod_brotli.html.fr b/docs/manual/mod/mod_brotli.html.fr new file mode 100644 index 0000000000..32ce5c0bbb --- /dev/null +++ b/docs/manual/mod/mod_brotli.html.fr @@ -0,0 +1,360 @@ + + + + + +mod_brotli - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+
+Apache > Serveur HTTP > Documentation > Version 2.4 > Modules
+
+

Module Apache mod_brotli

+
+

Langues Disponibles:  en  | + fr 

+
+ + + + +
Description:Compression du contenu via Brotli avant sa livraison au client
Statut:Extension
Identificateur de Module:brotli_module
Fichier Source:mod_brotli.c
Compatibilité:Disponible à partir de la version 2.4.26 du serveur HTTP Apache
+

Sommaire

+ +

Le module mod_brotli fournit le filtre en sortie + BROTLI_COMPRESS qui permet de compresser un contenu avant sa + livraison au client en utilisant la bibliothèque brotli. Ce filtre est + implémenté en utilisant la bibliothèque Brotli que l'on peut trouver à https://github.com/google/brotli.

+
+ +
top
+
+

Exemples de configurations

+

Compression et TLS

+

Certaines applications web sont vulnérables à une attaque de type vol + d'informations lorsqu'une connexion TLS transmet des données + compressées. Pour plus d'informations, étudiez en détail la famille + d'attaques "BREACH".

+
+

Voici une configuration simple qui compresse des types de contenus + courants au format texte :

+ +

Compression de certains types seulement

AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/xml text/css text/javascript application/javascript
+
+ +
top
+
+

Activation de la compression

+

Compression et TLS

+

Certaines applications web sont vulnérables à une attaque de type vol + d'informations lorsqu'une connexion TLS transmet des données + compressées. Pour plus d'informations, étudiez en détail la famille + d'attaques "BREACH".

+
+ +

Compression en sortie

+

La compression est implémentée par le filtre BROTLI_COMPRESS. La + directive suivante active la compression pour les documents correspondant + au conteneur dans lequel elle est placée :

+ +
SetOutputFilter BROTLI_COMPRESS
+SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-brotli
+ + +

Si vous voulez restreindre la compression à certains types MIME + particuliers, vous pouvez utiliser la directive AddOutputFilterByType. Dans l'exemple + suivant, l'activation de la compression est restreinte aux fichiers html + de la documentation d'Apache :

+ +
<Directory "/your-server-root/manual">
+    AddOutputFilterByType BROTLI_COMPRESS text/html
+</Directory>
+ + +

Note

+ Le filtre BROTLI_COMPRESS est toujours inséré après les + filtres RESOURCE comme PHP ou SSI. Il n'affecte jamais les sous-requêtes + internes. +
+

Note

+ Définie via SetEnv, la variable + d'environnement no-brotli permet de désactiver la + compression brotli pour une requête particulière, et ceci même si elle + est supportée par le client. +
+ + + +
top
+
+

Interaction avec les serveurs mandataires

+ +

Le module mod_brotli envoie un en-tête de réponse HTTP + Vary:Accept-Encoding pour indiquer aux mandataires qu'une + réponse mise en cache ne doit être envoyée qu'aux clients qui envoient + l'en-tête de requête Accept-Encoding approprié. Ceci permet + d'éviter d'envoyer du contenu compressé à un client qui ne sera pas en + mesure de le décompresser.

+ +

Si vous utilisez des exclusions spéciales dépendant, par exemple, de + l'en-tête User-Agent, vous devez faire un ajout manuel à + l'en-tête Vary afin d'informer les mandataires des restrictions + supplémentaires. Par exemple, dans une configuration typique où l'addition + du filtre BROTLI_COMPRESS dépend de l'en-tête User-Agent, + vous devez ajouter :

+ +
Header append Vary User-Agent
+ + +

Si votre décision d'utiliser la compression ou non dépend d'autres + informations que le contenu d'en-têtes de requêtes (par exemple la version + HTTP), vous devez affecter la valeur * à l'en-tête + Vary. Ceci permet d'éviter que des mandataires qui le + supportent n'effectuent une mise en cache intégrale.

+ +

Exemple

Header set Vary *
+
+
top
+
+

Servir un contenu pré-compressé

+ +

comme mod_brotli compresse systématiquement un contenu + pour chaque requête le concernant, il est possible d'obtenir un gain en + performance en pré-compressant le contenu et en disant à mod_brotli de le + servir sans le recompresser. Pour cela, vous pouvez utiliser une + configuration du style :

+ +
<IfModule mod_headers.c>
+    # Sert des fichiers CSS compressés par brotli, s'ils existent
+    # et si le client supporte brotli.
+    RewriteCond "%{HTTP:Accept-encoding}" "br"
+    RewriteCond "%{REQUEST_FILENAME}\.br" "-s"
+    RewriteRule "^(.*)\.css"              "$1\.css\.br" [QSA]
+
+    # Sert des fichiers JS compressés par brotli, s'ils existent
+    # et si le client supporte brotli.
+    RewriteCond "%{HTTP:Accept-encoding}" "br"
+    RewriteCond "%{REQUEST_FILENAME}\.br" "-s"
+    RewriteRule "^(.*)\.js"               "$1\.js\.br" [QSA]
+
+
+    # Sert des types de contenu corrects, et évite la double compression.
+    RewriteRule "\.css\.gz$" "-" [T=text/css,E=no-brotli:1]
+    RewriteRule "\.js\.gz$"  "-" [T=text/javascript,E=no-brotli:1]
+
+
+    <FilesMatch "(\.js\.br|\.css\.br)$">
+      # Sert un type d'encodage correct.
+      Header append Content-Encoding br
+
+      # Force les mandataires à mettre en cache séparément les fichiers css/js
+      # compressés ou non par brotli.
+      Header append Vary Accept-Encoding
+    </FilesMatch>
+</IfModule>
+ + +
+
top
+

Directive BrotliAlterETag

+ + + + + + + +
Description:Comment l'en-tête de réponse ETag doit être modifié au cours de la +compression
Syntaxe:BrotliAlterETag AddSuffix|NoChange|Remove
Défaut:BrotliAlterETag AddSuffix
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_brotli
+

La directive BrotliAlterETag permet d'indiquer + comment l'en-tête ETag doit être modifié lorsqu'une réponse est compressée.

+
+
AddSuffix
+

Ajoute la méthode de compression à la fin de l'en-tête ETag, ce qui + implique que les représentations compressées et non compressées possèderont + des en-têtes ETag uniques. C'était le comportement par défaut depuis la + version 2.4.0 avec un autre module de compression dynamique, + mod-deflate. Ce paramètre permet d'éviter l'envoi de messages + "HTTP Not Modified" (304) en réponse aux requêtes conditionnelles pour des + contenus compressés.

+
NoChange
+

Ne modifie pas l'en-tête ETag d'une réponse compressée. C'était le + comportement par défaut depuis la version 2.4.0 avec un autre module de + compression dynamique, mod-deflate. Ce paramètre ne respecte pas la + propriété HTTP/1.1 selon laquelle toutes les représentations d'une même + ressource ont des en-têtes ETag uniques.

+
Remove
+

Supprime l'en-tête ETag des réponses compressées, ce qui rend + impossibles certaines requêtes conditionnelles, mais évite les inconvénients + des options précédentes.

+
+ +
+
top
+

Directive BrotliCompressionMaxInputBlock

+ + + + + + + +
Description:Taille maximale du bloc de données en entrée
Syntaxe:BrotliCompressionMaxInputBlock value
Défaut:(automatic)
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_brotli
+

La directive BrotliCompressionMaxInputBlock permet + de spécifier la taille maximale du bloc de données en entrée entre 16 et 24, + sachant que plus cette taille sera grande, plus grande sera la quantité de + mémoire consommée.

+ +
+
top
+

Directive BrotliCompressionQuality

+ + + + + + + +
Description:Qualité de la compression
Syntaxe:BrotliCompressionQuality value
Défaut:BrotliCompressionQuality 5
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_brotli
+

La directive BrotliCompressionQuality permet de + spécifier la qualité de la compression (une valeur entre 0 et + 11). Les valeurs les plus hautes correspondent à une compression de + meilleure qualité mais plus lente. +

+ +
+
top
+

Directive BrotliCompressionWindow

+ + + + + + + +
Description:Taille de la fenêtre de compression glissante brotli
Syntaxe:BrotliCompressionWindow value
Défaut:BrotliCompressionWindow 18
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_brotli
+

La directive BrotliCompressionWindow permet de + spécifier la taille de la fenêtre de compression glissante brotli (une + valeur comprise entre 10 et 24). Une taille de fenêtre plus grande peut + améliorer la qualité de la compression mais consomme d'avantage de mémoire.

+ +
+
top
+

Directive BrotliFilterNote

+ + + + + + +
Description:Enregistre le taux de compression dans une note à des fins de +journalisation
Syntaxe:BrotliFilterNote [type] notename
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_brotli
+

La directive BrotliFilterNote permet d'indiquer + qu'une note à propos du taux de compression doit être attachée à la + requête. L'argument notename permet de spécifier le nom de la + note. Vous pouvez utiliser cette note à des fins de statistiques en ajoutant + l'information correspondante à votre access + log.

+ +

Exemple

BrotliFilterNote ratio
+
+LogFormat '"%r" %b (%{ratio}n) "%{User-agent}i"' brotli
+CustomLog "logs/brotli_log" brotli
+
+ +

Si vous souhaitez que l'information enregistrée dans vos journaux soit + plus pertinente, vous pouvez renseigner l'argument optionnel type + afin de spécifier le type de données à enregistrer dans la note à + journaliser. L'argument type accepte les valeurs suivantes :

+ +
+
Input
+
Enregistre dans la note le nombre d'octets contenus dans le flux + d'entrée du filtre.
+ +
Output
+
Enregistre dans la note le nombre d'octets contenus dans le flux + de sortie du filtre.
+ +
Ratio
+
Enregistre dans la note le taux de compression (output/input * + 100). Il s'agit de l'option par défaut si l'argument + type est omis.
+
+ +

Vous pouvez alors configurer vos journaux de la manière suivante :

+ +

Journalisation spécifique

BrotliFilterNote Input instream
+BrotliFilterNote Output outstream
+BrotliFilterNote Ratio ratio
+
+LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' brotli
+CustomLog "logs/brotli_log" brotli
+
+ +

Voir aussi

+ +
+
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/mod/mod_brotli.xml.meta b/docs/manual/mod/mod_brotli.xml.meta index 8dc14b10a5..8c6376e8a0 100644 --- a/docs/manual/mod/mod_brotli.xml.meta +++ b/docs/manual/mod/mod_brotli.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/mod/mod_http2.html b/docs/manual/mod/mod_http2.html index 508c669743..465dc86dbb 100644 --- a/docs/manual/mod/mod_http2.html +++ b/docs/manual/mod/mod_http2.html @@ -3,3 +3,7 @@ URI: mod_http2.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: mod_http2.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/mod/mod_http2.html.fr b/docs/manual/mod/mod_http2.html.fr new file mode 100644 index 0000000000..1af4023986 --- /dev/null +++ b/docs/manual/mod/mod_http2.html.fr @@ -0,0 +1,1031 @@ + + + + + +mod_http2 - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+
+Apache > Serveur HTTP > Documentation > Version 2.4 > Modules
+
+

Module Apache mod_http2

+
+

Langues Disponibles:  en  | + fr 

+
+ + + + +
Description:Support de la couche transport HTTP/2
Statut:Extension
Identificateur de Module:http2_module
Fichier Source:mod_http2.c
Compatibilité:Disponible à partir de la version 2.4.17 du serveur + HTTP Apache
+

Sommaire

+ +

Ce module ajoute le support de HTTP/2 (RFC 7540) au serveur HTTP + Apache.

+ +

Il s'appuie sur la bibliothèque libnghttp2 pour implémenter le + moteur de base http/2.

+ +

Pour mettre en oeuvre les fonctionnalités décrites dans ce + document, vous devez activer HTTP/2 en utilisant la directive + Protocols. HTTP/2 n'imposant + pas de chiffrement, deux protocoles sont disponibles : + h2 (HTTP/2 avec TLS) at h2c (HTTP/2 avec TCP).

+ +

Voici deux types de configuration courant :

+ +

HTTP/2 dans un contexte de serveur virtuel (TLS seulement)

+
Protocols h2 http/1.1
+ +

Permet une négociation HTTP/2 (h2) via TLS ALPN au sein d'un + <VirtualHost> + sécurisé. La vérification du préambule HTTP/2 (mode direct, voir + H2Direct) est désactivée par + défaut pour h2.

+
+ +

HTTP/2 dans un contexte de serveur (TLS et texte pur)

+
Protocols h2 h2c http/1.1
+ +

Permet une négociation HTTP/2 (h2) via TLS ALPN au sein d'un + <VirtualHost> + sécurisé. Permet aussi une négociation HTTP/2 en texte pur (h2c) en + effectuant une mise à jour depuis une connexion initiale HTTP/1.1 ou via + une vérification du préambule HTTP/2 (mode direct, voir + H2Direct).

+
+ +

Si vous avez besoin d'informations supplémentaires à propos du + protocole, veuillez vous reporter à la HTTP/2 FAQ.

+ + +
+ +
top
+
+

Comment ça marche ?

+ +

Quantification des ressources + supplémentaires nécessaires à HTTP/2

+

+ Activer HTTP/2 sur votre serveur Apache a un impact sur la + consommation de ressources, et si votre site est très actif, il est + conseillé d'en prendre sérieusement en compte les implications. +

+

+ HTTP/2 attribue à chaque requête qu'il reçoit son propre thread + de travail pour son traitement, la collecte des résultats et + l'envoie de ces derniers au client. Pour y parvenir, il lui faut + lancer des threads supplémentaires, et ceci constituera le premier + effet notable de l'activation de HTTP/2. +

+

+ Dans l'implémentation actuelle, ces threads de travail font partie + d'un jeu de threads distinct de celui des threads de travail du MPM + avec lequel vous êtes familié. Il s'agit simplement du mode de + fonctionnement actuel, et il n'en sera pas obligatoirement toujours + ainsi (il est cependant probable que la situation restera inchangée + avec la version 2.4.x). De par ce mode de fonctionnement, les + threads de travail HTTP/2, ou plus simplement H2 ne seront pas + affichés par mod_status. De même, ils ne seront pas + pris en compte par les directives du style ThreadsPerChild. Par contre, ils + utilisent par défaut la valeur de ThreadsPerChild si vous n'avez pas + spécifié d'autres valeurs via H2MinWorkers et H2MaxWorkers. +

+

+ Autre changement à surveiller : la consommation de mémoire. En + effet, comme HTTP/2 conserve plus d'informations sur le serveur pour + gérer toutes les requêtes en cours, leurs priorités et + interdépendances, il aura toujours besoin de plus de mémoire que + pour un traitement en HTTP/1.1. Trois directives permettent de + limiter l'empreinte mémoire d'une connexion HTTP/2 : H2MaxSessionStreams, H2WindowSize et H2StreamMaxMemSize. +

+

+ La directive H2MaxSessionStreams permet de limiter + le nombre de requêtes simultanées qu'un client peut envoyer sur une + connexion HTTP/2. La valeur que vous allez définir dépend de votre + site. La valeur par défaut qui est de 100 est largement suffisante, + et à moins que vous ne soyez un peu juste en mémoire, je vous + conseille de ne pas la modifier. La plupart des requêtes qu'envoie + un client sont des requêtes de type GET sans corps qui n'utilisent + que très peu de mémoire en attendant le démarrage du traitement. + +

+

+ La directive H2WindowSize + permet de définir la taille maximale que peut avoir le corps d'une + requête que le client envoie avant d'attendre que le serveur + en demande d'avantage. En d'autres termes, il s'agit de la quantité + de données que le serveur peut stocker dans son tampon, valable pour + une requête. +

+

+ En outre, la directive H2StreamMaxMemSize permet de définir + la quantité de données de la réponse qui doit être mise en tampon. + Chaque requête étant prise en charge par un thread H2Worker et + produisant des données que le serveur tente de transmettre au client + via une connexion HTTP/2, si le client n'est pas en mesure de lire + ces données assez rapidement, la connexion les mettra en tampon et + interrompra l'exécution du thread H2Worker correspondant. +

+ + + +

Serveurs virtuels et requêtes mal + redirigées

+

+ De nombreux site utilisent le même certificat TLS pour plusieurs + serveurs virtuels. Ce certificat référence un nom de serveur + générique comme '*.example.org' ou plusieurs noms de serveur + différents. Les navigateurs qui utilisent HTTP/2 détectent ce + comportement et réutilisent une connexion déjà ouverte pour ces + serveurs. +

+

+ Ceci améliore considérablement les performances, mais il y a un prix + à payer : il faut accorder un soin tout particulier à la + configuration de tels serveurs virtuels. Le problème réside dans le + fait que plusieurs requêtes pour plusieurs serveurs virtuels vont se + partager la même connexion TLS, et ceci empêche toute renégociation + car le standard HTTP/2 l'interdit. +

+

+ Ainsi, lorsque plusieurs de vos serveurs virtuels utilisent le même + certificat et si vous souhaitez utiliser HTTP/2 pour y accéder, vous + devez vous assurer que tous vos serveurs virtuels possèdent + exactement la même configuration SSL. En particulier, ils doivent + utiliser les mêmes protocole, algorithme de chiffrement et + configuration pour la vérification du client. +

+

+ Dans le cas contraire, Apache httpd le détectera et renverra au + client un code de réponse spécial, 421 Misdirected Request. +

+ + +

Variables d'environnement

+ +

Ce module peut être configuré pour fournir des informations en + rapport avec HTTP/2 sous la forme de variables d'environnement + supplémentaires dans l'espace de nommage SSI et CGI, ainsi que dans les + configurations personnalisées de le journalisation (voir + %{VAR_NAME}e). +

+ + + + + + + + + + + + + + + +
Nom variable :Type :Description :
HTTPedrapeauHTTP/2 est utilisé.
H2PUSHdrapeauLa + fonctionnalité HTTP/2 Server Push est activée pour cette requête et + supportée par le client.
H2_PUSHdrapeauautre nom pour H2PUSH
H2_PUSHEDchaînevide ou + PUSHED pour une requête pushée par le serveur.
H2_PUSHED_ONnombrenuméro du + flux HTTP/2 qui a déclenché le push de cette requête.
H2_STREAM_IDnombrenuméro du + flux HTTP/2 de cette requête.
H2_STREAM_TAGchaîneidentifiant + de flux unique du processus HTTP/2 composé de l'identifiant de la + connexion et de l'identifiant du flux séparés par -.
+ + +
+
top
+

Directive H2CopyFiles

+ + + + + + + + +
Description:Contrôle la gestion des fichiers dans les réponses
Syntaxe:H2CopyFiles on|off
Défaut:H2CopyFiles off
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_http2
Compatibilité:Disponible à partir de la version 2.4.24 du serveur HTTP + Apache.
+

+ Cette directive permet de définir la manière de gérer les + contenus de fichiers dans les réponses. Lorsqu'elle est à off + (sa valeur par défaut), les descripteurs de fichiers sont + transmis par le processus de traitement de la requête vers la + connexion principale en utilisant le système habituel de mise en + réserve d'Apache pour gérer le durée de vie du fichier. +

+

+ Lorsqu'elle est à on, le contenu du fichier est + recopier pendant le traitement de la requête et ces données + mises en tampon sont transmises vers la connexion principale, ce + qui s'avère avantageux lorsqu'un module tiers injecte dans la + réponse des fichiers possédant des durées de vie différentes. +

+

+ Un exemple de ces modules tiers : mod_wsgi qui peut + injecter des descripteurs de fichiers dans la réponse. Ces + fichiers sont fermés lorsque Python estime que le traitement est + terminé, alors que mod_http2 est probablement + encore loin d'en avoir fini avec eux. +

+ +
+
top
+

Directive H2Direct

+ + + + + + + +
Description:Activation du protocole H2 Direct
Syntaxe:H2Direct on|off
Défaut:H2Direct on pour h2c, off pour le protocole h2
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
+

+ Cette directive permet d'activer/désactiver + l'utilisation du mode HTTP/2 Direct. Elle doit être + située dans une section <VirtualHost> afin d'activer la + communication directe HTTP/2 pour le serveur virtuel + considéré. +

+

+ La notion de communication directe signifie que si les + premiers octets reçus par le serveur correspondent à un + en-tête HTTP/2, le protocole HTTP/2 est utilisé sans + négociation supplémentaire. Ce mode est défini pour + les transmissions en clair (h2c) dans la RFC 7540. Son + utilisation avec les connexions TLS n'est pas + officiellement supportée. +

+

+ Lorsque le protocole h2 ou h2c n'est pas activé via la + directive Protocols, la recherche d'un en-tête HTTP/2 n'est + jamais effectuée au sein d'une connexion. La directive + H2Direct ne produit alors aucun effet. Ceci est + important pour les connexions qui utilisent un protocole + pour lequel une lecture initiale peut entraîner un + blocage définitif comme NNTP. +

+

+ Pour un client qui sait qu'un serveur supporte h2c, la + communication directe HTTP/2 dispense le client d'une + mise à jour HTTP/1.1, ce qui entraîne une amélioration + des performances et évite les restrictions sur les corps + de requête suite à une mise à jour. +

+

+ Cette directive rend aussi h2c plus attractif pour les + communications de serveur à serveur lorsque la connexion + est sure ou peut être sécurisée d'une manière ou d'une + autre. +

+

Exemple

H2Direct on
+
+ +
+
top
+

Directive H2EarlyHints

+ + + + + + + + +
Description:Contrôle l'envoi de codes d'état 103
Syntaxe:H2EarlyHints on|off
Défaut:H2EarlyHints off
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
Compatibilité:Disponible à partir de la version 2.4.24 du serveur HTTP + Apache.
+

+ Cette directive permet de définir si les réponses intermédiaires + contenant un code d'état HTTP 103 doivent être envoyées au + client ou non. Par défaut ce n'est actuellement pas le cas car + certains clients ont encore des problèmes avec les réponses + intermédiaires inattendues. +

+

+ Lorsque cette directive est définie à on, les + ressources PUSHées définie par la directive + H2PushResource déclenchent une réponse + intermédiaire 103 avant la réponse finale. Cette réponse 103 + comporte des en-têtes Link qui provoquent le + préchargement des ressources considérées. +

+ +
+
top
+

Directive H2MaxSessionStreams

+ + + + + + + +
Description:Nombre maximal de flux actifs par session HTTP/2.
Syntaxe:H2MaxSessionStreams n
Défaut:H2MaxSessionStreams 100
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
+

+ Cette directive permet de définir le nombre maximal de flux + actifs par session (connexion) HTTP/2 accepté par le serveur. + Selon la RFC 7540, un flux est considéré comme actif s'il n'est + ni en attente ni fermé. +

+

Exemple

H2MaxSessionStreams 20
+
+ +
+
top
+

Directive H2MaxWorkerIdleSeconds

+ + + + + + + +
Description:Nombre maximal de secondes pendant lequel une unité de + traitement h2 pourra rester inactive sans être arrêtée.
Syntaxe:H2MaxWorkerIdleSeconds n
Défaut:H2MaxWorkerIdleSeconds 600
Contexte:configuration globale
Statut:Extension
Module:mod_http2
+

+ Cette directive permet de définir le nombre maximal de secondes + pendant lequel une unité de traitement h2 pourra rester inactive + avant de s'arrêter elle-même. Cet arrêt ne peut cependant se + produire que si le nombre d'unités de traitement h2 dépasse + H2MinWorkers. +

+

Exemple

H2MaxWorkerIdleSeconds 20
+
+ +
+
top
+

Directive H2MaxWorkers

+ + + + + + +
Description:Nombre maximal de threads à utiliser pour chaque processus + enfant.
Syntaxe:H2MaxWorkers n
Contexte:configuration globale
Statut:Extension
Module:mod_http2
+

+ Cette directive permet de définir le nombre maximal de threads à + lancer pour le traitement HTTP/2 de chaque processus enfant. Si + cette directive n'est pas définie, mod_http2 + choisira une valeur appropriée en fonction du module mpm + utilisé. + + This directive sets the maximum number of worker threads to spawn + per child process for HTTP/2 processing. If this directive is not used, + mod_http2 will chose a value suitable for the mpm + module loaded. +

+

Exemple

H2MaxWorkers 20
+
+ +
+
top
+

Directive H2MinWorkers

+ + + + + + +
Description:Nombre minimal de threads à utiliser pour chaque processus + enfant.
Syntaxe:H2MinWorkers n
Contexte:configuration globale
Statut:Extension
Module:mod_http2
+

+ Cette directive permet de définir le nombre minimal de threads à + lancer pour le traitement HTTP/2 de chaque processus enfant. Si + cette directive n'est pas définie, mod_http2 + choisira une valeur appropriée en fonction du module mpm + utilisé. +

+

Exemple

H2MinWorkers 10
+
+ +
+
top
+

Directive H2ModernTLSOnly

+ + + + + + + + +
Description:Impose les connexions HTTP/2 en mode "TLS moderne" + seulement
Syntaxe:H2ModernTLSOnly on|off
Défaut:H2ModernTLSOnly on
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
Compatibilité:Disponible à partir de la version 2.4.18 du serveur HTTP + Apache.
+

+ Cette directive permet de définir si les vérifications de + sécurité sur les connexions HTTP/2 doivent être exclusivement en + mode TLS (https:). Elle peut être placée au niveau du serveur + principal ou dans une section <VirtualHost>. +

+

+ Les vérifications de sécurité nécessitent TLSv1.2 au minimum et + l'absence de tout algorithme de chiffrement listé dans la RFC + 7540, Appendix A. Ces vérifications seront étendues lorsque de + nouveaux prérequis en matière de sécurité seront mis en place. +

+

+ Le nom provient des définitions Mozilla Security/Server + Side TLS où il est question de "modern compatibility". + Mozilla Firefox et d'autres navigateurs imposent la "modern + compatibility" pour les connexions HTTP/2. Comme toute chose en + matière de sécurité opérationnelle, c'est une cible mouvante + susceptible d'évoluer dans le futur. +

+

+ Un des buts de ces vérifications dans mod_http2 tend à imposer + ce niveau de sécurité pour toutes les connexions, et non + seulement celles en provenance des navigateurs web. Un autre but + est l'interdiction d'utiliser HTTP/2 en tant que protocole dans + les négociations si les prérequis ne sont pas respectés. +

+

+ En fin de compte, la sécurité de la connexion TLS est déterminée + par les directives de configuration du serveur pour mod_ssl. +

+

Exemple

H2ModernTLSOnly off
+
+ +
+
top
+

Directive H2Push

+ + + + + + + + +
Description:Activation/désactivation du server push H2
Syntaxe:H2Push on|off
Défaut:H2Push on
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
Compatibilité:Disponible à partir de la version 2.4.18 du serveur HTTP + Apache.
+

+ Cette directive permet d'activer/désactiver + l'utilisation de la fonctionnalité server push du + protocole HTTP/2. +

+

+ Lorsqu'un client demande une ressource particulière, le + protocole HTTP/2 permet au serveur de lui fournir des + ressources supplémentaires. Ceci s'avère utile lorsque + ces ressources sont reliées entre elles, ce qui peut + laisser supposer que le client va probablement les + demander dans un délai plus ou moins long. Le mécanisme + de pushing permet alors au client d'économiser le temps + qu'il lui aurait fallu pour demander ces ressources + supplémentaires lui-même. Par contre, fournir au client + des ressources dont il n'a pas besoin ou qu'il possède + déjà constitue une perte de bande passante. +

+

+ Les server pushes sont détectés en inspectant les + en-têtes Link des réponses (voir + https://tools.ietf.org/html/rfc5988 pour la + spécification). Lorsqu'un lien spécifié de cette manière + possède l'attribut rel=preload, il est + considéré comme devant faire l'objet d'un push. +

+

+ Les en-têtes link des réponses sont soit définis par + l'application, soit configurés via + mod_headers comme suit : +

+

Exemple de configuration d'en-tête link via mod_headers

<Location /index.html>
+    Header add Link "</css/site.css>;rel=preload"
+    Header add Link "</images/logo.jpg>;rel=preload"
+</Location>
+
+

+ Comme le montre l'exemple, il est possible d'ajouter + autant d'en-têtes link que l'on souhaite à une réponse, ce qui déclenchera + autant de pushes. Cette fonctionnalité doit donc être + utilisée avec prudence car le module ne vérifie pas si + une ressource n'a pas déjà été "pushée" vers un client. +

+

+ Les server pushes HTTP/2 sont activés par défaut. Cette + directive permet de désactiver cette fonctionnalité pour + le serveur virtuel ou non considéré. +

+

Exemple

H2Push off
+
+

+ Enfin, il est important de savoir que les pushes ne se + produisent que si le client en manifeste le désir ; la + plupart des navigateurs le font, mais certains, comme + Safari 9, ne le font pas. En outre, les pushes ne se produisent que + pour les ressources de la même autorité que celle de la + réponse originale. +

+ +
+
top
+

Directive H2PushDiarySize

+ + + + + + + + +
Description:Taille du journal des Pushes H2
Syntaxe:H2PushDiarySize n
Défaut:H2PushDiarySize 256
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
Compatibilité:Disponible à partir de la version 2.4.19 du serveur HTTP + Apache.
+

+ Cette directive permet de définir le nombre maximum de pushes + qui seront enregistrés pour une connexion HTTP/2. Elle peut être + placée dans une section <VirtualHost> afin de définir le nombre + de pushes pour le serveur virtuel considéré. +

+

+ Le journal des pushes enregistre un condensé (sous la forme d'un + nombre de 64 bits) des ressources préchargées (leurs URLs) afin + d'éviter les duplications de pushes pour une même connexion. + Cependant, ces données ne sont pas conservées, et les clients + qui ouvrent une nouvelle connexion se verront à nouveau affecter les + mêmes pushes. A ce titre, une étude est en cours pour permettre + au client de supprimer le condensé des ressources qu'il possède + déjà, et par là-même de réinitialiser le journal des pushes à + chaque nouvelle connexion. +

+

+ Si la taille maximale est atteinte, les nouvelles entrées + remplacent les plus anciennes. Une entrée du journal nécessitant + 8 octets, un journal de 256 entrées consomme 2 Ko de mémoire. +

+

+ Si cette directive est définie à 0, le journal des pushes est + désactivé. +

+ +
+
top
+

Directive H2PushPriority

+ + + + + + + + +
Description:Priorité des pushes H2
Syntaxe:H2PushPriority mime-type [after|before|interleaved] [weight]
Défaut:H2PushPriority * After 16
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
Compatibilité:Disponible à partir de la version 2.4.18 du serveur HTTP + Apache. Nécessite la bibliothèque nghttp2 version 1.5.0 ou supérieure.
+

+ Cette directive permet de définir une gestion de priorité des + pushes en fonction du type de contenu de la réponse. Elle est en + général définie au niveau du serveur principal, mais peut aussi + l'être au niveau d'un serveur virtuel. +

+

+ Les pushes HTTP/2 sont toujours liés à une requête client. + Chaque paire requête/réponse de cette sorte, ou flux, + possède une dépendance et un poids qui définissent la + priorité du flux. +

+

+ Lorsqu'un flux dépend d'un autre, disons X dépend de Y, + alors Y reçoit toute la bande passante avant que X n'en reçoive + ne serait-ce qu'une partie. Notez que cela ne signifie en rien + que Y bloque X ; en effet, si Y n'a aucune donnée à envoyer, + toute la bande passante qui lui est allouée peut être utilisée + par X. +

+

+ Lorsque plusieurs flux dépendent d'un même autre flux, disons X1 + et X2 dépendent tous deux de Y, le poids détermine la + bande passante allouée. Ainsi, si X1 et X2 possèdent le même + poids, ils recevront tous deux la moitié de la bande passante + disponible. Si le poids de X1 est égal au double de celui de X2, + X1 recevra une bande passante double de celle de X2. + +

+

+ En fin de compte, tout flux dépend du flux racine qui + reçoit toute la bande passante disponible mais n'envoie jamais + de données. Cette bande passante est ainsi répartie entre les flux + enfants selon leur poids. Ces derniers l'utilisent alors pour + envoyer leurs données ou pour la répartir entre leurs propres + flux enfants, et ainsi de suite. Si aucun des flux enfants n'a + de données à envoyer, la bande passante est attribuée à d'autres + flux selon les mêmes règles. +

+

+ Ce système de priorités a été conçu de façon a toujours pouvoir + utiliser la bande passante disponible tout en définissant des + priorités et en attribuant des poids aux différents flux. Ainsi, + tous les flux sont en général initialisés par le client qui + lui-même définit les priorités. +

+

+ Seul le fait de savoir qu'un flux implique un PUSH permet au + serveur de décider quelle est la priorité initiale d'un + tel flux. Dans les exemples ci-dessous, X est le flux client. Il + dépend de Y et le serveur décide de "PUSHer" les flux P1 et P2 + sur X. +

+

+ La règle de priorité par défaut est : +

+

Règle de priorité par défaut

H2PushPriority * After 16
+
+

+ Elle peut se traduire par "Envoyer un flux PUSH avec tout type + de contenu et dépendant du flux client avec le poids 16". P1 et + P2 seront alors envoyés après X, et comme leurs poids sont + identiques, il se verront allouer la même quantité de bande + passante. +

+

Règle de priorité entrelacée

H2PushPriority text/css Interleaved 256
+
+

+ Ce qui peut se traduire par "Envoyer toute ressource CSS dans la + même dépendance et avec le même poids que le flux client". Si le + type de contenu de P1 est "text/css", il dépendra de Y (comme X) + et son poids effectif sera calculé selon la formule : P1ew + = Xw * (P1w / 256). Si P1w est de 256, Le poids effectif + de P1 sera le même que celui de X. Si X et P1 ont des données à + envoyer, il se verront allouer la même quantité de bande + passante. +

+

+ Avec un Pw de 512, un flux entrelacé et PUSHé aura un poids + double de celui de X. Avec un poids de 128, son poids ne sera + que la moitié de celui de X. Notez que les poids effectifs sont + toujours plafonnés à 256. + +

+

Règle de priorité Before

H2PushPriority application/json Before
+
+

+ Dans cet exemple, tout flux PUSHé dont le contenu est de type + 'application/json' sera envoyé avant X, ce qui rend P1 + dépendant de Y et X dépendant de P1. Ainsi, X sera mis en + attente aussi longtemps que P1 aura des données à envoyer. Le + poids effectif est hérité du flux client, et l'attribution d'un + poids spécifique n'est pas autorisée. +

+

+ Vous devez garder à l'esprit que les spécifications en matière + de priorités sont limitées par les ressources disponibles du + serveur. Si un serveur ne dispose d'aucun processus/thread de + travail pour les flux PUSHés, les données du flux considéré ne + seront envoyées que lorsque les autres flux auront terminé + l'envoi des leurs. +

+

+ Enfin et surtout, il convient de tenir compte de certaines + particularités de la syntaxe de cette directive : +

+
    +
  1. '*' est la seule expression permettant de remplacer tout + type de contenu. 'image/*' ne fonctionnera pas.
  2. +
  3. La dépendance par défaut est 'After'.
  4. +
  5. Il existe aussi des poids par défaut : pour 'After' le poids + est de 16, alors que pour 'interleaved' il est de 256. +
  6. +
+

Exemples de règles

H2PushPriority application/json 32         # une règle de priorité 'After'
+H2PushPriority image/jpeg before           # poid hérité
+H2PushPriority text/css   interleaved      # poids de 256 par défaut
+
+ +
+
top
+

Directive H2PushResource

+ + + + + + + +
Description:Déclare des ressources à proposer ("pusher") au client
Syntaxe:H2PushResource [add] path [critical]
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_http2
Compatibilité:Disponible à partir de la version 2.4.24 du serveur HTTP + Apache.
+

+ Lorsqu'il sont activés pour un répertoire, les PUSHes HTTP/2 seront + tentés pour tous les chemins ajoutés via cette directive. Cette + dernière peut être utilisée plusieurs fois pour le même + répertoire. +

+

+ Cette directive propose des ressources beaucoup plus tôt que les + en-têtes Link de mod_headers. + mod_http2 présente ces ressources au client via + une réponse intermédiaire 103 Early Hints. Ceci + implique que les clients qui ne supportent pas PUSH recevront + quand-même rapidement des propositions de préchargement. +

+

+ A la différence de la définition d'en-têtes de réponse + Link via mod_headers, cette + directive n'aura d'effet que pour les connexions HTTP/2. +

+

+ En ajoutant l'option critical à une telle + ressource, le serveur la traitera prioritairement, et une fois + les données disponibles, ces dernières seront envoyées avant les + données de la requête principale. +

+ +
+
top
+

Directive H2SerializeHeaders

+ + + + + + + +
Description:Active/désactive la sérialisation du traitement des + requêtes/réponses
Syntaxe:H2SerializeHeaders on|off
Défaut:H2SerializeHeaders off
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
+

+ Cette directive permet de définir si les requêtes HTTP/2 doivent + être sérialisées au format HTTP/1.1 pour être traitées par le + noyau de httpd, ou si les données binaires reçues + doivent être passées directement aux request_recs. +

+

+ La sérialisation dégrade les performances, mais garantit une + meilleure compatibilité ascendante lorsque des filtres ou + programmes accroche personnalisés en ont besoin. +

+

Exemple

H2SerializeHeaders on
+
+ +
+
top
+

Directive H2StreamMaxMemSize

+ + + + + + + +
Description:Quantité maximale de données en sortie mises en tampon par + flux.
Syntaxe:H2StreamMaxMemSize bytes
Défaut:H2StreamMaxMemSize 65536
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
+

+ Cette directive permet de définir la quantité maximale de + données en sortie mises en tampon mémoire pour un flux actif. Ce + tampon mémoire n'est pas alloué pour chaque flux en tant que + tel. Les quantités de mémoire sont définies en fonction de + cette limite lorsqu'elles sont sur le point d'être allouées. Le + flux s'arrête lorsque la limite a été atteinte, et ne reprendra + que lorsque les données du tampon auront été transmises au + client. +

+

Exemple

H2StreamMaxMemSize 128000
+
+ +
+
top
+

Directive H2TLSCoolDownSecs

+ + + + + + + + +
Description:
Syntaxe:H2TLSCoolDownSecs seconds
Défaut:H2TLSCoolDownSecs 1
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
Compatibilité:Disponible à partir de la version 2.4.18 du serveur HTTP + Apache.
+

+ Cette directive permet de spécifier le nombre de secondes avant + lequel une connexion TLS inactive va diminuer + la taille des paquets de données à une valeur inférieure (~1300 + octets). Elle peut être définie au niveau du serveur principal + ou pour un <serveur + virtuel> spécifique. +

+

+ Voir la directive H2TLSWarmUpSize pour une description + du "préchauffage" de TLS. La directive H2TLSCoolDownSecs met en + lumière le fait que les connexions peuvent se détériorer au bout + d'un certain temps (et au fur et à mesure des corrections du + flux TCP), et cela même si elle sont inactives. Pour ne pas + détériorer les performances d'une manière générale, il est par + conséquent préférable de revenir à la phase de préchauffage + lorsqu'aucune donnée n'a été transmise pendant un certain nombre + de secondes. +

+

+ Dans les situations où les connexions peuvent être considérées + comme fiables, ce délai peut être désactivé en définissant cette + directive à 0. +

+

+ Dans l'exemple suivant, la directive est définie à 0, ce qui + désactive tout retour à une phase de préchauffage des connexions + TLS. Les connexions TLS déjà préchauffées conservent donc toujours + leur taille de paquet de données maximale. +

+

Exemple

H2TLSCoolDownSecs 0
+
+ +
+
top
+

Directive H2TLSWarmUpSize

+ + + + + + + + +
Description:
Syntaxe:H2TLSWarmUpSize amount
Défaut:H2TLSWarmUpSize 1048576
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
Compatibilité:Disponible à partir de la version 2.4.18 du serveur HTTP + Apache.
+

+ Cette directive permet de définir le nombre d'octets à envoyer + dans les petits enregistrements TLS (~1300 octets) avant + d'atteindre leur taille maximale de 16 ko pour les connexions + https: HTTP/2. Elle peut être définie au niveau du serveur + principal ou pour des <Serveurs virtuels> spécifiques. +

+

+ Les mesures effectuées par les laboratoires de performances de + Google montrent que les meilleurs performances sont atteintes + pour les connexions TLS si la taille initiale des + enregistrements reste en deça du niveau du MTU afin de permettre + à la totatlité d'un enregistrement d'entrer dans un paquet IP. +

+

+ Comme TCP ajuste son contrôle de flux et sa taille de fenêtre, + des enregistrements TLS trop longs peuvent rester en file + d'attente ou même être perdus et devoir alors être réémis. Ceci + est bien entendu vrai pour tous les paquets ; cependant, TLS a + besoin de la totalité de l'enregistrement pour pouvoir le + déchiffrer. Tout octet manquant rendra impossible l'utilisation + de ceux qui ont été reçus. +

+

+ Lorqu'un nombre suffisant d'octets a été transmis avec succès, + la connexion TCP est stable, et la taille maximale (16 ko) des + enregistrements TLS peut être utilisée pour des performances + optimales. +

+

+ Dans les architectures où les serveurs sont atteints par des + machines locales ou pour les connexions de confiance seulement, + la valeur de cette directive peut être définie à 0, ce qui a + pour effet de désactiver la "phase de chauffage". +

+

+ Dans l'exemple suivant, la phase de chauffage est effectivement + désactivée en définissant la directive à 0. +

+

Exemple

H2TLSWarmUpSize 0
+
+ +
+
top
+

Directive H2Upgrade

+ + + + + + + +
Description:Activation/Désactivation du protocole de mise à jour H2
Syntaxe:H2Upgrade on|off
Défaut:H2Upgrade on pour h2c, off pour h2
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
+

+ Cette directive permet d'activer/désactiver l'utilisation de la + méthode de mise à jour pour passer de HTTP/1.1 à HTTP/2. Elle + doit être placée dans une section <VirtualHost> afin d'activer la mise à + jour vers HTTP/2 pour le serveur virtuel considéré. +

+

+ Cette méthode de changement de protocole est définie dans + HTTP/1.1 et utilise l'en-tête "Upgrade" (d'où son nom) pour + indiquer l'intention d'utiliser un autre protocole. Cet en-tête + peut être présent dans toute requête sur une connexion HTTP/1.1. +

+

+ Elle activée par défaut pour les transmissions en clair + (h2c), et désactivée avec TLS (h2), comme préconisé par la RFC + 7540. +

+

+ Sachez cependant que les mises à jour ne sont acceptées que pour + les requêtes qui ne possèdent pas de corps. Le requêtes de type + POST et PUT avec un contenu ne feront jamais l'objet d'une mise + à jour vers HTTP/2. Se référer à la documentation de la + directive H2Direct pour + envisager une alternative à Upgrade. +

+

+ Cette directive n'a d'effet que si h2 ou h2c est activé via la + directive Protocols. +

+

Exemple

H2Upgrade on
+
+ +
+
top
+

Directive H2WindowSize

+ + + + + + + +
Description:Taille maximale des paquets de données pour les transmissions client + vers serveur.
Syntaxe:H2WindowSize bytes
Défaut:H2WindowSize 65535
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_http2
+

+ Cette directive permet de définir la taille maximale des paquets + de données envoyés par le client au serveur, et + limite la quantité de données que le serveur doit mettre en + tampon. Le client arrêtera d'envoyer des données sur un flux + lorsque cette limite sera atteinte jusqu'à ce que le serveur + indique qu'il dispose d'un espace suffisant (car il aura traité + une partie des données). +

+ Cette limite n'affecte que les corps de requêtes, non les + métadonnées comme les en-têtes. Par contre, elle n'affecte pas + les corps de réponses car la taille maximale de ces derniers est + gérée au niveau des clients. +

+

Exemple

H2WindowSize 128000
+
+ +
+
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/mod/mod_http2.xml.meta b/docs/manual/mod/mod_http2.xml.meta index 500e9da4cb..0e02fed505 100644 --- a/docs/manual/mod/mod_http2.xml.meta +++ b/docs/manual/mod/mod_http2.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/mod/mod_proxy_hcheck.html b/docs/manual/mod/mod_proxy_hcheck.html index 93eed7c901..159f4647a8 100644 --- a/docs/manual/mod/mod_proxy_hcheck.html +++ b/docs/manual/mod/mod_proxy_hcheck.html @@ -3,3 +3,7 @@ URI: mod_proxy_hcheck.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: mod_proxy_hcheck.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/mod/mod_proxy_hcheck.html.fr b/docs/manual/mod/mod_proxy_hcheck.html.fr new file mode 100644 index 0000000000..358eda8a75 --- /dev/null +++ b/docs/manual/mod/mod_proxy_hcheck.html.fr @@ -0,0 +1,297 @@ + + + + + +mod_proxy_hcheck - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+
+Apache > Serveur HTTP > Documentation > Version 2.4 > Modules
+
+

Module Apache mod_proxy_hcheck

+
+

Langues Disponibles:  en  | + fr 

+
+ + + + +
Description:Check up dynamique des membres du groupe de répartition de charge +(équipiers) pour mod_proxy
Statut:Extension
Identificateur de Module:proxy_hcheck_module
Fichier Source:mod_proxy_hcheck.c
Compatibilité:Disponible à partir de la version 2.4.21 du serveur HTTP Apache
+

Sommaire

+ +

Ce module permet d'effectuer un check up dynamique des membres du groupe + de répartition de charge (équipiers). Ce check up peut être activé pour un + ou plusieurs équipiers et il est indépendant des requêtes de mandataire + inverse proprement dites.

+ +

Pour fonctionner, ce module nécessite le chargement préalable de + mod_watchdog.

+ +

Paramètres

+

Le mécanisme de check up est activé via l'utilisation de paramètres + supplémentaires de la directive BalancerMember configurés de manière standard + via la directive ProxyPass :

+ +

Ce module définit un nouveau drapeau d'état status pour BalancerMember : + "C". Lorsque l'équipier est mis hors service suite à un + disfonctionnement déterminé par le module de check up, ce drapeau est activé + et peut être lu (et modifié) via le balancer-manager.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
ParamètreDéfautDescription
hcmethodNoneAucun check up dynamique n'est effectué. Les choix possibles sont : + + + + + + + + + + +
MethodDescriptionNote
NoneAucun check up dynamique effectué
TCPVérifie qu'un socket vers le serveur + d'arrière-plan peut être créé ; par exemple "es-tu en + état de fonctionner"
OPTIONSEnvoie une requête HTTP + OPTIONS au serveur d'arrière-plan*
HEADEnvoie une requête HTTP + HEAD au serveur d'arrière-plan*
GETEnvoie une requête HTTP + GET au serveur d'arrière-plan*
*: si hcexpr n'est pas + utilisé, un retour HTTP 2xx ou 3xx sera + interprété comme un passage avec succès du check + up.
+
hcpasses1Nombre de check up à passer avec succès avant de remettre en service + l'équipier
hcfails1Nombre de check up échoués avant mettre hors service l'équipier
hcinterval30Intervalle entre deux check up en secondes (par défaut effectué + toutes les 30 secondes)
hcuri URI supplémentaire à ajouter à l'URL de l'équipier pour le check up.
hctemplate Nom du modèle créé via ProxyHCTemplate à + utiliser pour définir les paramètres de check up de cet équipier
hcexpr Nom de l'expression créée via ProxyHCExpr + utilisée pour analyser les en-têtes de la réponse du check up.
+ Si ce paramètre est absent, un état HTTP de 2xx à 3xx est + interprété comme un check up réussi.
+
+ +
+ +
top
+
+

Exemples d'utilisation

+ + +

L'exemple suivant montre comment configurer le check up pour différents + serveurs d'arrière-plan :

+ + +
ProxyHCExpr ok234 {%{REQUEST_STATUS} =~ /^[234]/}
+ProxyHCExpr gdown {%{REQUEST_STATUS} =~ /^[5]/}
+ProxyHCExpr in_maint {hc('body') !~ /Under maintenance/}
+
+<Proxy balancer://foo>
+  BalancerMember http://www.example.com/  hcmethod=GET hcexpr=in_maint hcuri=/status.php
+  BalancerMember http://www2.example.com/ hcmethod=HEAD hcexpr=ok234 hcinterval=10
+  BalancerMember http://www3.example.com/ hcmethod=TCP hcinterval=5 hcpasses=2 hcfails=3
+  BalancerMember http://www4.example.com/
+</Proxy>
+
+ProxyPass "/" "balancer://foo"
+ProxyPassReverse "/" "balancer://foo"
+ + +

Dans ce scénario, on teste l'équipier http://www.example.com/ en lui +envoyant une requête GET /status.php et en regardant si la réponse +contient la chaîne Under maintenance. Si c'est le cas, le check up est +considéré comme ayant échoué et l'équipier est mis hors service. Ce check up +dynamique est effectué toutes les 30 secondes, ce qui correspond à la valeur par +défaut.

+ +

On teste l'équipier http://www2.example.com/ en lui envoyant +simplement une requête HEAD toutes les 10 secondes et en vérifiant +que la réponse HTTP est bien un code d'état de 2xx, 3xx ou 4xx. On teste +l'équipier http://www3.example.com/ en vérifiant simplement toutes +les 5 secondes que le socket vers ce serveur est bien opérationnel. Si ce +serveur est marqué "hors service", il lui faudra 2 check up réussis pour être +réactivé et participer à nouveau à la répartition de charge. Si à ce moment-là +il échoue à 3 check up successifs, il sera à nouveau mis hors service. Enfin, +l'équipier http://www4.example.com/ ne fait l'objet d'aucun check +up.

+ +
+
top
+

Directive ProxyHCExpr

+ + + + + + +
Description:Crée et nomme une expression conditionnelle à utiliser pour +déterminer la santé d'un serveur d'arrière-plan en fonction de sa valeur
Syntaxe:ProxyHCExpr name {ap_expr expression}
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_proxy_hcheck
+

La directive ProxyHCExpr permet de créer et nommer + une expression conditionnelle dont la valeur calculée en fonction des + en-têtes de la réponse du serveur d'arrière-plan permettra d'évaluer la + santé de ce dernier. Cette expression nommée peut alors être assignée aux + serveurs d'arrière-plan via le paramètre hcexpr.

+ +

ProxyHCExpr: interprète les réponses 2xx/3xx/4xx comme des + check up réussis

ProxyHCExpr ok234 {%{REQUEST_STATUS} =~ /^[234]/}
+ProxyPass "/apps"     "balancer://foo"
+
+<Proxy balancer://foo>
+  BalancerMember http://www2.example.com/  hcmethod=HEAD hcexpr=ok234 hcinterval=10
+</Proxy>
+
+ +
+ L'expression peut utiliser des accolades ("{}") + comme délimiteurs en plus des guillemets normaux. +
+ +

Si l'on utilise une méthode de check up (par exemple GET) + qui génère un corps de réponse, ce corps peut lui-même être ausculté via + ap_expr en utilisant la fonction associée aux expressions + hc() spécifique à ce module.

+ +

Dans l'exemple suivant, on envoie une requête GET au serveur + d'arrière-plan, et si le corps de la réponse contient la chaîne Under + maintenance, ce serveur d'arrière-plan est mis hors service.

+ +

ProxyHCExpr: auscultation du corps de la réponse

ProxyHCExpr in_maint {hc('body') !~ /Under maintenance/}
+ProxyPass "/apps"     "balancer://foo"
+
+<Proxy balancer://foo>
+  BalancerMember http://www.example.com/ hcexpr=in_maint hcmethod=get hcuri=/status.php
+</Proxy>
+
+ +

NOTE: Comme le corps de la réponse peut être assez grand, il est + recommandé de privilégier un check up basé sur les codes d'état.

+ +
+
top
+

Directive ProxyHCTemplate

+ + + + + + +
Description:Crée et nomme un modèle permettant de définir différents +paramètres de check up
Syntaxe:ProxyHCTemplate name parameter=setting [...]
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_proxy_hcheck
+

La directive ProxyHCTemplate permet de créer et + nommer un modèle de paramètres de check up qui peut alors être assigné aux + équipiers via le paramètre hctemplate.

+ +

ProxyHCTemplate

ProxyHCTemplate tcp5 hcmethod=tcp hcinterval=5
+ProxyPass "/apps"     "balancer://foo"
+
+<Proxy balancer://foo>
+  BalancerMember http://www2.example.com/ hctemplate=tcp5
+</Proxy>
+
+ + +
+
top
+

Directive ProxyHCTPsize

+ + + + + + +
Description:Définit la taille totale, pour l'ensemble du +serveur, du jeu de threads utilisé pour le check up des +équipiers
Syntaxe:ProxyHCTPsize size
Contexte:configuration globale
Statut:Extension
Module:mod_proxy_hcheck
+

Si Apache httpd et APR ont été compilés avec le support des threads, le + module de check up peut confier ce travail à un jeu de threads associé au + processus Watchdog, ce qui permet l'exécution des check up en parallèle. La + directive ProxyHCTPsize permet de déterminer la + taille de ce jeu de threads. Une valeur de 0 signifie qu'aucun + jeu de threads ne sera utilisé, et le check up des différents équipiers sera + alors effectué séquentiellement. La taille par défaut du jeu de threads est + de 16.

+ +

ProxyHCTPsize

ProxyHCTPsize 32
+
+ + +
+
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/mod/mod_proxy_hcheck.xml.meta b/docs/manual/mod/mod_proxy_hcheck.xml.meta index a325b81c63..1ac64daac4 100644 --- a/docs/manual/mod/mod_proxy_hcheck.xml.meta +++ b/docs/manual/mod/mod_proxy_hcheck.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/mod/mod_proxy_http2.html b/docs/manual/mod/mod_proxy_http2.html index 8144eefdb8..ff176cb471 100644 --- a/docs/manual/mod/mod_proxy_http2.html +++ b/docs/manual/mod/mod_proxy_http2.html @@ -3,3 +3,7 @@ URI: mod_proxy_http2.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: mod_proxy_http2.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/mod/mod_proxy_http2.html.fr b/docs/manual/mod/mod_proxy_http2.html.fr new file mode 100644 index 0000000000..6f6101a139 --- /dev/null +++ b/docs/manual/mod/mod_proxy_http2.html.fr @@ -0,0 +1,155 @@ + + + + + +mod_proxy_http2 - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+
+Apache > Serveur HTTP > Documentation > Version 2.4 > Modules
+
+

Module Apache mod_proxy_http2

+
+

Langues Disponibles:  en  | + fr 

+
+ + + +
Description:Support de HTTP/2 pour mod_proxy
Statut:Extension
Identificateur de Module:proxy_http2_module
Fichier Source:mod_proxy_http2.c
+

Sommaire

+ +

mod_proxy_http2 ne + supporte que HTTP/2 et ne permet pas de rétrogradation vers HTTP/1.1. Cela + signifie que le serveur d'arrière-plan doit supporter HTTP/2 car HTTP/1.1 ne + pourra alors pas être utilisé.

+ +

Ce module nécessite la présence de mod_proxy ; + pour pouvoir traiter les requêtes mandatées HTTP/2, + mod_proxy et mod_proxy_http2 doivent donc + être chargés par le serveur.

+ +

mod_proxy_http2 travaille avec des requêtes entrantes en + HTTP/1.1 ou HTTP/2. Dans les deux cas, les requêtes vers le même serveur + d'arrière-plan sont envoyées + via une seule connexion TCP, dans la mesure du possible (autrement dit + lorsque la connexion peut être réutilisée).

+ +

Avertissement : il ne sera effectué aucune tentative de fusion de + plusieurs requêtes entrantes HTTP/1 (devant être mandatées vers le même + serveur d'arrière-plan) vers des flux HTTP/2 appartenant à la même requête + HTTP/2. Chaque requête HTTP/1 entrante sera mandatée vers le serveur + d'arrière-plan en utilisant une requête HTTP/2 séparée (tout en réutilisant + si possible la même connexion TCP).

+ +

Ce module s'appuie sur libnghttp2 pour + fournir le moteur central http/2.

+ +

Avertissement

+

Ce module en est au + stade expérimental. Ses comportement, directives et valeurs par défauts sont + donc susceptibles de modifications d'une version à l'autre plus fréquentes + que pour les autres modules. A ce titre, il est fortement conseillé aux + utilisateurs de consulter le fichier "CHANGES" pour prendre connaissance de + ces modifications.

+ +

Avertissement

+

N'activez pas le mandatement avant d'avoir sécurisé votre serveur. Les serveurs + mandataires ouverts sont dangereux non seulement pour votre propre réseau, + mais aussi pour l'Internet au sens large.

+
+
+
Support Apache!

Sujets

+

Directives

+

Ce module ne fournit aucune directive.

+

Traitement des bugs

Voir aussi

+
+
top
+
+

Exemples de base

+ +

Les exemples ci-dessous montrent comment configurer HTTP/2 pour des + connexions d'arrière-plan vers un mandataire inverse.

+ +

HTTP/2 (TLS)

ProxyPass "/app" "h2://app.example.com"
+ProxyPassReverse "/app" "https://app.example.com"
+
+ +

HTTP/2 (non sécurisé)

ProxyPass "/app" "h2c://app.example.com"
+ProxyPassReverse "/app" "http://app.example.com"
+
+ +
+

Pour mandater en inverse les protocoles h2 ou + h2c, on utilise la directive + ProxyPassReverse avec les schèmes habituels + https et respectivement + http qui sont connus et utilisés par l'agent utilisateur.

+
+
top
+
+

Informations sur les requêtes

+

mod_proxy_http fournit les informations sur les requêtes + suivantes pour enregistrement dans les journaux en utilisant le format + %{VARNAME}n avec les directives LogFormat ou ErrorLogFormat : +

+
+
proxy-source-port
+
Le numéro de port local utilisé pour la connexion vers le serveur + d'arrière-plan.
+
proxy-status
+
Le statut HTTP/2 en provenance du serveur d'arrière-plan.
+
+
+
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/mod/mod_proxy_http2.xml.meta b/docs/manual/mod/mod_proxy_http2.xml.meta index 2ccd79bba6..071a546512 100644 --- a/docs/manual/mod/mod_proxy_http2.xml.meta +++ b/docs/manual/mod/mod_proxy_http2.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/mod/mod_proxy_wstunnel.html b/docs/manual/mod/mod_proxy_wstunnel.html index 9eea981032..d32a1d3e65 100644 --- a/docs/manual/mod/mod_proxy_wstunnel.html +++ b/docs/manual/mod/mod_proxy_wstunnel.html @@ -3,3 +3,7 @@ URI: mod_proxy_wstunnel.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: mod_proxy_wstunnel.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/mod/mod_proxy_wstunnel.html.fr b/docs/manual/mod/mod_proxy_wstunnel.html.fr new file mode 100644 index 0000000000..b63c141014 --- /dev/null +++ b/docs/manual/mod/mod_proxy_wstunnel.html.fr @@ -0,0 +1,101 @@ + + + + + +mod_proxy_wstunnel - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+
+Apache > Serveur HTTP > Documentation > Version 2.4 > Modules
+
+

Module Apache mod_proxy_wstunnel

+
+

Langues Disponibles:  en  | + fr 

+
+ + + + +
Description:Module pour mod_proxy supportant les +websockets
Statut:Extension
Identificateur de Module:proxy_wstunnel_module
Fichier Source:mod_proxy_wstunnel.c
Compatibilité:Disponible à partir de la version 2.4.5 du serveur HTTP +Apache
+

Sommaire

+ +

Pour utiliser ce module, mod_proxy doit être + chargé. Il fournit le support du tunnelling pour les connexions + websocket vers un serveur websockets d'arrière-plan. La connexion + est automatiquement promue en connexion websocket :

+ +

Réponse HTTP

Upgrade: WebSocket
+Connection: Upgrade
+
+ +

Le mandatement des requêtes vers un serveur websockets comme +echo.websocket.org peut être configuré via la directive ProxyPass :

+
ProxyPass "/ws2/"  "ws://echo.websocket.org/"
+ProxyPass "/wss2/" "wss://echo.websocket.org/"
+ + +

La répartition de charge entre plusieurs serveurs d'arrière-plan peut être +configurée via le module mod_proxy_balancer.

+ +

En fait, ce module permet d'accepter d'autres protocoles ; vous pouvez à cet +effet utiliser le paramètre upgrade de la directive ProxyPass. La valeur NONE +signifie que vous court-circuitez la consultation de l'en-tête, mais que vous +autorisez quand-même WebSocket. La valeur ANY signifie que Upgrade +va lire les en-têtes de la requête et les utilisera dans l'en-tête +Upgrade de la réponse.

+
+
Support Apache!

Directives

+

Ce module ne fournit aucune directive.

+

Traitement des bugs

Voir aussi

+
+ +
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/mod/mod_proxy_wstunnel.xml.meta b/docs/manual/mod/mod_proxy_wstunnel.xml.meta index d12fab9bcb..6c0a516e2a 100644 --- a/docs/manual/mod/mod_proxy_wstunnel.xml.meta +++ b/docs/manual/mod/mod_proxy_wstunnel.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/mod/mod_version.html b/docs/manual/mod/mod_version.html index 03cb254726..4ff0b7d0f5 100644 --- a/docs/manual/mod/mod_version.html +++ b/docs/manual/mod/mod_version.html @@ -4,6 +4,10 @@ URI: mod_version.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 +URI: mod_version.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 + URI: mod_version.html.ja.utf8 Content-Language: ja Content-type: text/html; charset=UTF-8 diff --git a/docs/manual/mod/mod_version.html.fr b/docs/manual/mod/mod_version.html.fr new file mode 100644 index 0000000000..97ad8b7b91 --- /dev/null +++ b/docs/manual/mod/mod_version.html.fr @@ -0,0 +1,180 @@ + + + + + +mod_version - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+
+Apache > Serveur HTTP > Documentation > Version 2.4 > Modules
+
+

Module Apache mod_version

+
+

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

+
+
Cette traduction peut être périmée. Vérifiez la version + anglaise pour les changements récents.
+ + + + +
Description:Configuration dépendant de la version
Statut:Extension
Identificateur de Module:version_module
Fichier Source:mod_version.c
Compatibilité:Disponible depuis la version 2.0.56 +d'Apache
+

Sommaire

+ +

Ce module a été conçu pour être utilisé dans les suites de tests + et les grands réseaux qui doivent prendre en compte différentes + versions de httpd et différentes configurations. Il fournit un + nouveau conteneur -- <IfVersion>, qui apporte une grande + souplesse dans la vérification de version en permettant une + comparaison numérique et l'utilisation d'expressions + rationnelles.

+ +

Exemples

<IfVersion 2.4.2>
+    # la version actuelle de httpd est exactement 2.4.2
+</IfVersion>
+
+<IfVersion >= 2.5>
+    # utilise vraiment les nouvelles fonctionnalités :-)
+</IfVersion>
+
+ +

Voir ci-dessous pour d'autres exemples.

+
+ + +
top
+

Directive <IfVersion>

+ + + + + + + +
Description:Contient des portions de configuration dépendantes de la +version
Syntaxe:<IfVersion [[!]opérateur] version> ... +</IfVersion>
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Surcharges autorisées:All
Statut:Extension
Module:mod_version
+

La section <IfVersion> + rassemble des directives de configuration qui ne sont exécutées que + si la version de httpd satisfait aux critères spécifiés. Pour une + comparaison normale (numérique), l'argument version doit + être spécifié sous le format + majeur[.mineur[.patch]], + comme par exemple 2.1.0 ou 2.2. + mineur et patch sont optionnels. Si ces + numéros sont absents, il se voient affectée implicitement la valeur + 0. Les opérateurs numériques suivants sont autorisés + :

+ + + + + + + + + + + + +
opérateurdescription
= ou ==La version de httpd est égale à la valeur + spécifiée
>La version de httpd est supérieure à la valeur + spécifiée
>=La version de httpd est supérieure ou égale à la valeur + spécifiée
<La version de httpd est inférieure à la valeur + spécifiée
<=La version de httpd est inférieure ou égale à la valeur + spécifiée
+ +

Exemple

<IfVersion >= 2.3>
+    # la condition n'est satisfaite que pour les versions de httpd
+	# supérieures ou égales à 2.3
+</IfVersion>
+
+ +

En plus d'une comparaison numérique, il est possible de comparer + la version de httpd avec une expression + rationnelle. Il existe deux méthodes pour spécifier cette + dernière :

+ + + + + + +
opérateurdescription
= ou ==version est de la forme + /regex/
~version est de la forme + regex
+ +

Exemple

<IfVersion = /^2.4.[01234]$/>
+    # exemple de contournement pour les versions boguées
+</IfVersion>
+
+ +

Pour inverser la condition, tous les opérateurs peuvent être + préfixés par un point d'exclamation (!) :

+ +
<IfVersion !~ ^2.4.[01234]$>
+    # pas pour ces versions
+</IfVersion>
+
+ +

Si opérateur est absent, sa valeur implicite est + =.

+ +
+
+
+

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

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/mod/mod_version.xml.fr b/docs/manual/mod/mod_version.xml.fr index 366b60238c..d5c35f9075 100644 --- a/docs/manual/mod/mod_version.xml.fr +++ b/docs/manual/mod/mod_version.xml.fr @@ -1,7 +1,7 @@ - + @@ -62,8 +62,7 @@ d'Apache version <IfVersion [[!]opérateur] version> ... </IfVersion> -server configserveur -virtuel +server configvirtual host directory.htaccess All diff --git a/docs/manual/mod/mod_version.xml.meta b/docs/manual/mod/mod_version.xml.meta index 4fbd74a3a1..629401fd5c 100644 --- a/docs/manual/mod/mod_version.xml.meta +++ b/docs/manual/mod/mod_version.xml.meta @@ -8,6 +8,7 @@ en + fr ja ko diff --git a/docs/manual/mod/mod_watchdog.html b/docs/manual/mod/mod_watchdog.html index 468f2c90a3..de06ccb850 100644 --- a/docs/manual/mod/mod_watchdog.html +++ b/docs/manual/mod/mod_watchdog.html @@ -3,3 +3,7 @@ URI: mod_watchdog.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: mod_watchdog.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/mod/mod_watchdog.html.fr b/docs/manual/mod/mod_watchdog.html.fr new file mode 100644 index 0000000000..f36954836c --- /dev/null +++ b/docs/manual/mod/mod_watchdog.html.fr @@ -0,0 +1,108 @@ + + + + + +mod_watchdog - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+ +
+

Module Apache mod_watchdog

+
+

Langues Disponibles:  en  | + fr 

+
+ + + + +
Description:Fournit une infrastructure permettant à d'autres modules +d'exécuter des tâches périodiques.
Statut:Base
Identificateur de Module:watchdog_module
Fichier Source:mod_watchdog.c
Compatibilité:Disponible à partir de la version 2.3 du serveur HTTP +Apache
+

Sommaire

+ +

Le module mod_watchdog définit des +branchements (hooks) programmés pour permettre à d'autres modules +d'exécuter des tâches périodiques. Ces modules peuvent enregistrer des +gestionnaires (handlers) pour les branchements de +mod_watchdog. Actuellement, seuls les modules suivants +de la distribution Apache utilisent cette fonctionnalité :

+ +
+Pour qu'un module puisse utiliser la fonctionnalité de +mod_watchdog, ce dernier doit être lié statiquement +avec le serveur httpd ; s'il a été lié dynamiquement, il doit être +chargé avant l'appel au module qui doit utiliser sa fonctionnalité. +
+
+ + +
top
+

Directive WatchdogInterval

+ + + + + + + +
Description:Intervalle Watchdog en secondes
Syntaxe:WatchdogInterval number-of-seconds
Défaut:WatchdogInterval 1
Contexte:configuration globale
Statut:Base
Module:mod_watchdog
+

Cette directive permet de définir l'intervalle entre chaque exécution +du branchement watchdog. La valeur par défaut est de 1 seconde.

+ +
+
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/mod/mod_watchdog.xml.meta b/docs/manual/mod/mod_watchdog.xml.meta index c6d93ae5b0..b3d22c289a 100644 --- a/docs/manual/mod/mod_watchdog.xml.meta +++ b/docs/manual/mod/mod_watchdog.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/mod/quickreference.html.fr b/docs/manual/mod/quickreference.html.fr index 60acdc16ed..85d829968f 100644 --- a/docs/manual/mod/quickreference.html.fr +++ b/docs/manual/mod/quickreference.html.fr @@ -297,11 +297,11 @@ utiliser extension d'un fournisseur d'authentification de base et lui attribue l'alias spécifié AuthnzFcgiCheckAuthnProvider provider-name|None -option ...dEEnables a FastCGI application to handle the check_authn -authentication hook. +option ...dEPermet à une application FastCGI de gérer l'accroche +d'authentification check_authn. AuthnzFcgiDefineProvider type provider-name -backend-addresssEDefines a FastCGI application as a provider for -authentication and/or authorization +backend-addresssEDéfinit une application FastCGI en tant que fournisseur +d'authentification et/ou autorisation AuthType None|Basic|Digest|FormdhBType d'authentification utilisateur AuthUserFile chemin-fichierdhBDéfinit le nom d'un fichier texte pour l'authentification contenant la liste des utilisateurs et de leurs mots de @@ -332,11 +332,13 @@ charge BalancerPersist On|Off Off svETente de conserver les changements effectués par le gestionnaire de répartition de charge après un redémarrage du serveur. -BrotliAlterETag AddSuffix|NoChange|Remove AddSuffix svEHow the outgoing ETag header should be modified during compression -BrotliCompressionMaxInputBlock valuesvEMaximum input block size -BrotliCompressionQuality value 5 svECompression quality -BrotliCompressionWindow value 18 svEBrotli sliding compression window size -BrotliFilterNote [type] notenamesvEPlaces the compression ratio in a note for logging +BrotliAlterETag AddSuffix|NoChange|Remove AddSuffix svEComment l'en-tête de réponse ETag doit être modifié au cours de la +compression +BrotliCompressionMaxInputBlock valuesvETaille maximale du bloc de données en entrée +BrotliCompressionQuality value 5 svEQualité de la compression +BrotliCompressionWindow value 18 svETaille de la fenêtre de compression glissante brotli +BrotliFilterNote [type] notenamesvEEnregistre le taux de compression dans une note à des fins de +journalisation BrowserMatch regex [!]env-variable[=valeur] [[!]env-variable[=valeur]] ...svdhBDéfinit des variables d'environnement en fonction du contenu de l'en-tête HTTP User-Agent @@ -588,24 +590,31 @@ gmon.out. s'arrêter dans le cas d'un arrêt "en douceur" Group groupe unix #-1 sBGroupe sous lequel le serveur va traiter les requêtes -H2CopyFiles on|off off svdhEDetermine file handling in responses -H2Direct on|off on for h2c, off for +svEH2 Direct Protocol Switch -H2EarlyHints on|off off svEDetermine sending of 103 status codes -H2MaxSessionStreams n 100 svEMaximum number of active streams per HTTP/2 session. -H2MaxWorkerIdleSeconds n 600 sEMaximum number of seconds h2 workers remain idle until shut down. -H2MaxWorkers nsEMaximum number of worker threads to use per child process. -H2MinWorkers nsEMinimal number of worker threads to use per child process. -H2ModernTLSOnly on|off on svERequire HTTP/2 connections to be "modern TLS" only -H2Push on|off on svEH2 Server Push Switch -H2PushDiarySize n 256 svEH2 Server Push Diary Size -H2PushPriority mime-type [after|before|interleaved] [weight] * After 16 svEH2 Server Push Priority -H2PushResource [add] path [critical]svdhEDeclares resources for early pushing to the client -H2SerializeHeaders on|off off svESerialize Request/Response Processing Switch -H2StreamMaxMemSize bytes 65536 svEMaximum amount of output data buffered per stream. +H2CopyFiles on|off off svdhEContrôle la gestion des fichiers dans les réponses +H2Direct on|off on pour h2c, off po +svEActivation du protocole H2 Direct +H2EarlyHints on|off off svEContrôle l'envoi de codes d'état 103 +H2MaxSessionStreams n 100 svENombre maximal de flux actifs par session HTTP/2. +H2MaxWorkerIdleSeconds n 600 sENombre maximal de secondes pendant lequel une unité de + traitement h2 pourra rester inactive sans être arrêtée. +H2MaxWorkers nsENombre maximal de threads à utiliser pour chaque processus + enfant. +H2MinWorkers nsENombre minimal de threads à utiliser pour chaque processus + enfant. +H2ModernTLSOnly on|off on svEImpose les connexions HTTP/2 en mode "TLS moderne" + seulement +H2Push on|off on svEActivation/désactivation du server push H2 +H2PushDiarySize n 256 svETaille du journal des Pushes H2 +H2PushPriority mime-type [after|before|interleaved] [weight] * After 16 svEPriorité des pushes H2 +H2PushResource [add] path [critical]svdhEDéclare des ressources à proposer ("pusher") au client +H2SerializeHeaders on|off off svEActive/désactive la sérialisation du traitement des + requêtes/réponses +H2StreamMaxMemSize bytes 65536 svEQuantité maximale de données en sortie mises en tampon par + flux. H2TLSCoolDownSecs seconds 1 svE- H2TLSWarmUpSize amount 1048576 svE- -H2Upgrade on|off on for h2c, off for +svEH2 Upgrade Protocol Switch -H2WindowSize bytes 65535 svESize of Stream Window for upstream data. +H2Upgrade on|off on pour h2c, off po +svEActivation/Désactivation du protocole de mise à jour H2 +H2WindowSize bytes 65535 svETaille maximale des paquets de données pour les transmissions client + vers serveur. Header [condition] add|append|echo|edit|edit*|merge|set|setifempty|unset|note en-tête [[expr=]valeur [remplacement] @@ -647,8 +656,9 @@ de la présence ou de l'absence d'un module spécifique <IfSection [!]section-name> ... </IfSection>svdhCRegroupe des directives dont le traitement est conditionné par la présence ou l'absence d'une section particulière -<IfVersion [[!]operator] version> ... -</IfVersion>svdhEcontains version dependent configuration +<IfVersion [[!]opérateur] version> ... +</IfVersion>svdhEContient des portions de configuration dépendantes de la +version ImapBase map|referer|URL http://nom_serveur/ +svdhBValeur par défaut de la directive base des fichiers imagemap ImapDefault error|nocontent|map|referer|URL nocontent svdhBAction à entreprendre par défaut lorsqu'un fichier imagemap @@ -948,9 +958,13 @@ mandatés doivent-ils être échappés lorsqu'ils sont envoyés au serveur FTP ? ProxyFtpListOnWildcard [on|off]svdELes caractères génériques dans les noms de fichiers demandés doivent-ils déclencher l'affichage d'un listing ? -ProxyHCExpr name {ap_expr expression}svECreates a named condition expression to use to determine health of the backend based on its response -ProxyHCTemplate name parameter=setting [...]svECreates a named template for setting various health check parameters -ProxyHCTPsize sizesESets the total server-wide size of the threadpool used for the health check workers +ProxyHCExpr name {ap_expr expression}svECrée et nomme une expression conditionnelle à utiliser pour +déterminer la santé d'un serveur d'arrière-plan en fonction de sa valeur +ProxyHCTemplate name parameter=setting [...]svECrée et nomme un modèle permettant de définir différents +paramètres de check up +ProxyHCTPsize sizesEDéfinit la taille totale, pour l'ensemble du +serveur, du jeu de threads utilisé pour le check up des +équipiers ProxyHTMLBufSize nb-octets 8192 svdBDéfinit l'incrément de la taille du tampon, ainsi que sa taille initiale, pour la mise en tampon des scripts en ligne et des feuilles de style. @@ -1436,7 +1450,7 @@ d'hôte spécifique ou à une adresse IP un serveur virtuel donné VirtualScriptAliasIP répertoire-interpolé|none none svEConfiguration dynamique du répertoire des scripts CGI pour un serveur virtuel donné -WatchdogInterval number-of-seconds 1 sBWatchdog interval in seconds +WatchdogInterval number-of-seconds 1 sBIntervalle Watchdog en secondes XBitHack on|off|full off svdhBInterprète les directives SSI dans les fichiers dont le bit d'exécution est positionné xml2EncAlias jeu-de-caractères alias [alias ...]sBDéfinit des alias pour les valeurs d'encodage diff --git a/docs/manual/programs/log_server_status.html b/docs/manual/programs/log_server_status.html index 192b6142ae..b3a6d91af0 100644 --- a/docs/manual/programs/log_server_status.html +++ b/docs/manual/programs/log_server_status.html @@ -3,3 +3,7 @@ URI: log_server_status.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: log_server_status.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/programs/log_server_status.html.fr b/docs/manual/programs/log_server_status.html.fr new file mode 100644 index 0000000000..0c720a3926 --- /dev/null +++ b/docs/manual/programs/log_server_status.html.fr @@ -0,0 +1,89 @@ + + + + + +log_server_status - Enregistrement périodique de l'état du serveur - Serveur HTTP Apache Version 2.4 + + + + + + + +
<-
+

log_server_status - Enregistrement périodique de l'état du serveur

+
+

Langues Disponibles:  en  | + fr 

+
+ +

Ce script perl a été conçu pour être exécuté à intervalles + réguliers via un déclencheur de type cron. Il se connecte au serveur + pour en extraire des informations quant à son état. Il formate ces + informations sous la forme d'une seule ligne qu'il enregistre dans + un fichier. Vous devez éditer la valeur des variables en tête de + script afin de définir le chemin du fichier de sortie. Pour que ce + script puisse fonctionner, mod_status doit au + préalable être chargé et configuré.

+
+
top
+
+

Mode d'emploi

+ +

Le script contient les sections suivantes :

+ +
my $wherelog = "/usr/local/apache2/logs/";  # Le fichier de sortie sera
+					# du style "/usr/local/apache2/logs/19960312"
+my $server   = "localhost";        # Nom du serveur, par exemple "www.foo.com"
+my $port     = "80";               # Port d'écoute du serveur
+my $request = "/server-status/?auto";    # Requête à soumettre
+ + +

Ces variables doivent contenir des valeurs correctes, et le +gestionnaire /server-status doit être configuré pour le +répertoire considéré. En outre, l'utilisateur qui exécute le script doit +avoir les droits d'écriture sur le chemin du fichier de sortie.

+ +

L'exécution périodique du script via cron permet d'obtenir un jeu de +rapports d'état qui pourra être utilisé à des fins d'analyse +statistique.

+ +
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/programs/log_server_status.xml.meta b/docs/manual/programs/log_server_status.xml.meta index 4ad2755872..b13d52e438 100644 --- a/docs/manual/programs/log_server_status.xml.meta +++ b/docs/manual/programs/log_server_status.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/programs/split-logfile.html b/docs/manual/programs/split-logfile.html index 80b48605c0..dfd27f9789 100644 --- a/docs/manual/programs/split-logfile.html +++ b/docs/manual/programs/split-logfile.html @@ -3,3 +3,7 @@ URI: split-logfile.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 + +URI: split-logfile.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/programs/split-logfile.html.fr b/docs/manual/programs/split-logfile.html.fr new file mode 100644 index 0000000000..f73475dde1 --- /dev/null +++ b/docs/manual/programs/split-logfile.html.fr @@ -0,0 +1,92 @@ + + + + + +split-logfile - Eclatement des journaux en fonction des serveurs +virtuels - Serveur HTTP Apache Version 2.4 + + + + + + + +
<-
+

split-logfile - Eclatement des journaux en fonction des serveurs +virtuels

+
+

Langues Disponibles:  en  | + fr 

+
+ +

Ce script perl permet d'extraire un journal pour chaque serveur + virtuel à partir d'un journal d'accès global du serveur web. Pour + que ce script fonctionne, le premier champ de chaque ligne du + journal global doit contenir l'identité du serveur virtuel ; ce + champ aura été ajouté à la directive LogFormat via la variable + "%v". +

+
+
top
+
+

Mode d'emploi

+ +

Création d'un fichier journal comportant l'identité du serveur + virtuel considéré :

+ +
LogFormat "%v %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined_plus_vhost
+CustomLog logs/access_log combined_plus_vhost
+ + +

Un fichier journal sera créé dans le répertoire à partir duquel + vous exécutez le script pour chaque serveur virtuel qui apparaît + dans le journal global. Ces fichiers journaux seront nommés à partir + du nom du serveur virtuel considéré, avec l'extension + .log.

+ +

Le fichier journal global est lu depuis l'entrée standard stdin. + Les entrées de ce journal sont alors ajoutées au journal du serveur + virtuel correspondant.

+ +

split-logfile < access_log

+ + +
+
+

Langues Disponibles:  en  | + fr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/programs/split-logfile.xml.meta b/docs/manual/programs/split-logfile.xml.meta index 21514060e7..32e2b3d50f 100644 --- a/docs/manual/programs/split-logfile.xml.meta +++ b/docs/manual/programs/split-logfile.xml.meta @@ -8,5 +8,6 @@ en + fr diff --git a/docs/manual/programs/suexec.html b/docs/manual/programs/suexec.html index 439a0689a7..be1c74bb52 100644 --- a/docs/manual/programs/suexec.html +++ b/docs/manual/programs/suexec.html @@ -4,6 +4,10 @@ URI: suexec.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 +URI: suexec.html.fr +Content-Language: fr +Content-type: text/html; charset=ISO-8859-1 + URI: suexec.html.ko.euc-kr Content-Language: ko Content-type: text/html; charset=EUC-KR diff --git a/docs/manual/programs/suexec.html.fr b/docs/manual/programs/suexec.html.fr new file mode 100644 index 0000000000..d50f4b51f9 --- /dev/null +++ b/docs/manual/programs/suexec.html.fr @@ -0,0 +1,96 @@ + + + + + +suexec - Change d'utilisateur avant l'exécution d'un programme +externe - Serveur HTTP Apache Version 2.4 + + + + + + + +
<-
+

suexec - Change d'utilisateur avant l'exécution d'un programme +externe

+
+

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

+
+ +

suexec permet au serveur HTTP Apache de changer + d'utilisateur avant d'exécuter un programme CGI. Pour ce faire, il + doit être exécuté par root. A cet effet, comme le + démon HTTP ne s'exécute en général pas en tant que + root, l'exécutable suexec doit posséder + le bit setuid et avoir comme propriétaire root. Seul + root doit en posséder les droits en écriture.

+ +

Pour plus d'informations à propos des concepts et du modèle de + sécurité du programme suexec, veuillez vous reporter à sa + documentation : http://httpd.apache.org/docs/2.4/suexec.html.

+
+ +
top
+
+

Synopsis

+

suexec -V

+
top
+
+

Options

+ +
+
-V
+ +
Si vous êtes root, cette option permet d'afficher les +options de compilation du programme suexec. Pour des +raisons de sécurité, toutes les options de configuration ne sont +modifiables qu'à la compilation.
+ +
+
+
+

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

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file diff --git a/docs/manual/programs/suexec.xml.meta b/docs/manual/programs/suexec.xml.meta index a3e41fe279..05444f4111 100644 --- a/docs/manual/programs/suexec.xml.meta +++ b/docs/manual/programs/suexec.xml.meta @@ -8,6 +8,7 @@ en + fr ko tr -- 2.40.0