<-
Apache > Serveur HTTP > Documentation > Version 2.4

Vue d'ensemble des nouvelles fonctionnalit�s de la version 2.4 du serveur HTTP Apache

Langues Disponibles:  en  |  fr  |  tr 

Ce document d�crit les modifications majeures apport�es par la version 2.4 du serveur HTTP Apache. Pour les nouvelles fonctionnalit�s ajout�es par la version 2.2, se r�f�rer au document Nouvelles fonctionnalit�s de la version 2.2.

Voir aussi

top

Am�liorations du noyau

Modules multiprocessus (MPMs) chargeables � l'ex�cution
Plusieurs MPMs peuvent maintenant �tre compil�s en tant que modules chargeables. Le choix du MPM � utiliser s'effectue � l'ex�cution via la directive LoadModule.
MPM Event
Le MPM Event n'en est plus au stade exp�rimental et est maintenant pleinement support�.
Support du mode asynchrone
Le support des lectures/�critures asynchrones pour les MPMs et les plateformes qui l'impl�mentent a �t� am�lior�.
Configuration du niveau de journalisation (LogLevel) par module et par r�pertoire
La directive LogLevel peut maintenant �tre d�finie par module et par r�pertoire. Les nouveaux niveaux trace1trace8 ont �t� ajout�s au dessus du niveau de journalisation debug.
Sections de configuration au niveau requ�te
Les sections If, <ElseIf> et <Else> permettent de d�finir une configuration en fonction de crit�res li�s � la requ�te.
Interpr�teur d'expressions � usage g�n�ral
Un nouvel interpr�teur d'expressions permet de sp�cifier des conditions complexes via des directives � syntaxe commune comme SetEnvIfExpr, RewriteCond, Header, <If>, etc...
KeepAliveTimeout en millisecondes
Il est maintenant possible de d�finir la directive KeepAliveTimeout en millisecondes.
Directive NameVirtualHost
Cette directive n'est plus n�cessaire et est maintenant obsol�te.
Directives autoris�es dans les fichiers .htaccess
La nouvelle directive AllowOverrideList permet de contr�ler de mani�re plus pr�cise la liste des directives autoris�es dans les fichiers .htaccess.
Variables dans les fichiers de configuration
La directive Define permet de d�finir des variables dans les fichiers de configuration, am�liorant ainsi la claret� de la pr�sentation si la m�me valeur est utilis�e en plusieurs points de la configuration.
Diminution de la m�moire utilis�e
Bien qu'elle propose de nombreuses nouvelles fonctionnalit�s, la version 2.4.x tend � utiliser moins de m�moire que la version 2.2.x.
top

Nouveau modules

mod_proxy_fcgi
Mise � disposition du protocole FastCGI pour mod_proxy.
mod_proxy_scgi
Mise � disposition du protocole SCGI pour mod_proxy.
mod_proxy_express
Ajoute � mod_proxy la configuration dynamique de mandataires inverses en masse.
mod_remoteip
Remplace l'adresse IP distante et le nom d'h�te apparents du client pour la requ�te courante par la liste d'adresses IP pr�sent�e par un mandataire ou un r�partiteur de charge via les en-t�tes de la requ�te.
mod_heartmonitor, mod_lbmethod_heartbeat
Permet � mod_proxy_balancer de r�partir la charge en fonction du nombre de connexions actives sur les serveurs d'arri�re-plan.
mod_proxy_html
Anciennement module tiers, il supporte la correction des liens HTML dans une situation de mandat inverse, o� le serveur d'arri�re-plan g�n�re des URLs qui ne sont pas valides du point de vue des clients du mandataire.
mod_sed
Une am�lioration de mod_substitute qui permet d'�diter le corps de la r�ponse avec toute la puissance de la commande sed.
mod_auth_form
Impl�mente une authentification � base de formulaire.
mod_session
Permet de conserver les donn�es de sessions des clients sous forme de cookies ou dans une base de donn�es.
mod_allowmethods
Permet de restreindre l'utilisation de certaines m�thodes HTTP sans interf�rer avec l'authentification et l'autorisation.
mod_lua
Embarque le langage Lua dans httpd pour la configuration et les fonctions logiques courantes (Exp�rimental).
mod_log_debug
Permet d'introduire une journalisation personnalis�e � diff�rentes phases du traitement de la requ�te.
mod_buffer
Fournit un tampon pour les piles des filtres en entr�e et en sortie.
mod_data
Convertit un corps de r�ponse en URL de type donn�es RFC2397.
mod_ratelimit
Permet de limiter la bande passante pour certains clients.
mod_request
Fournit des filtres permettant de g�rer et de mettre � disposition les corps des requ�tes HTTP.
mod_reflector
Permet de renvoyer comme r�ponse le corps de la requ�te via la pile du filtre de sortie.
mod_slotmem_shm
Met � disposition un fournisseur de m�moire partag�e � base de slots (du style tableau de bord).
mod_xml2enc
Anciennement module tiers, il supporte l'internationalisation dans les modules de filtrage bas�s sur libxml2 (support du markup)
mod_macro (disponible � partir de la version 2.4.5)
Permet d'utiliser des macros au sein des fichiers de configuration.
mod_proxy_wstunnel (disponible � partir de la version 2.4.5)
Support des tunnels web-socket.
mod_authnz_fcgi (disponible � partir de la version 2.4.10)
Permet aux applications d'autorisation FastCGI d'authentifier et/ou autoriser les clients.
mod_http2 (disponible � partir de la version 2.4.17)
Support de la couche transport HTTP/2.
top

Am�liorations des modules

mod_ssl
mod_ssl peut maintenant v�rifier la validit� des certificats clients en se connectant � un serveur OCSP. Il est possible de d�finir un r�pondeur par d�faut, et de choisir si l'on pr�f�re le r�pondeur d�sign� dans le certificat client.
En outre, mod_ssl supporte maintenant l'estampillage OCSP (OCSP stapling), qui permet au serveur d'attester la validit� de son certificat aupr�s du client au cours de la phase de n�gociation de la connexion.
Enfin, mod_ssl peut maintenant �tre configur� pour que celui-ci partage les donn�es de session SSL entre les serveurs via memcached.
Le support des cl�s EC a �t� ajout� � celui des cl�s RSA et DSA.
Support de TLS-SRP (disponible � partir de la version 2.4.4).
mod_proxy
La directive ProxyPass est maintenant configur�e de mani�re optimale dans les sections Location ou LocationMatch, et offre un gain de performances important par rapport � la syntaxe traditionnelle � deux param�tres lorsqu'elle est pr�sente en grand nombre.
Il est maintenant possible de configurer l'adresse source dans les requ�tes mandat�es.
Support des sockets de type Unix vers le serveur d'arri�re-plan (disponible � partir de la version 2.4.7).
mod_proxy_balancer
Le gestionnaire de r�partition de charge propose de nouvelles fonctionnalit�s. Ainsi, les possibilit�s de configuration des membres du groupe de r�partition de charge pendant l'ex�cution ont �t� am�lior�es (possibilit� d'ajout d'un membre suppl�mentaire).
Configuration � l'ex�cution d'un sous-ensemble de param�tres de r�partition de charge.
Les membres du groupe de r�partition peuvent �tre d�finis � 'Drain' de fa�on � ce qu'ils ne r�pondent qu'aux sessions persistantes existantes, ce qui permet de les mettre hors ligne en douceur.
Les r�glages du r�partiteur de charge peuvent �tre rendus persistants apr�s red�marrage.
mod_cache
Le filtre CACHE du module mod_cache peut �tre ins�r� � un certain point de la cha�ne de filtrage pour contr�ler plus finement la mise en cache.
mod_cache peut maintenant mettre en cache des requ�tes HEAD.
Chaque fois que cela est possible, les directives de mod_cache peuvent maintenant �tre d�finies au niveau du r�pertoire, et non plus seulement au niveau du serveur principal.
L'URL de base des URLs en cache peut �tre personnalis�e de fa�on � ce qu'un cluster de caches puisse partager le m�me pr�fixe d'URL.
mod_cache peut maintenant servir du contenu non mis � jour lorsqu'un serveur d'arri�re-plan n'est pas disponible (erreur 5xx).
mod_cache peut maintenant ins�rer HIT/MISS/REVALIDATE dans un en-t�te X-Cache.
mod_include
Support de l'attribut 'onerror' dans un �l�ment 'include', permettant de renvoyer un message d'erreur personnalis� � la place du message d'erreur par d�faut.
mod_cgi, mod_include, mod_isapi, ...
La traduction des en-t�tes en variables d'environnement est plus stricte qu'avant, ce qui permet de diminuer l'exposition aux attaques de type cross-site-scripting via injection d'en-t�tes. Les en-t�tes contenant des caract�res invalides (comme les caract�res de soulignement) sont maintenant ignor�s. Le document Les variables d'environnement dans Apache pr�sente quelques pistes pour contourner ce probl�me avec les clients anciens qui n�cessitent de tels en-t�tes (Ceci affecte tous les modules qui utilisent ces variables d'environnement).
mod_authz_core Conteneurs de logique d'autorisation
La directive Require et les directives de conteneurs associ�es, comme <RequireAll>, permettent de d�finir une logique d'autorisation avanc�e.
mod_rewrite
La directive RewriteRule dispose maintenant des drapeaux [QSD] (Query String Discard) et [END] qui permettent de simplifier les sc�narios de r��criture courants.
Possibilit� d'utiliser des expressions bool�ennes complexes dans la directive RewriteCond.
Possibilit� d'utiliser des requ�tes SQL en tant que fonctions dans la directive RewriteMap.
mod_ldap, mod_authnz_ldap
mod_authnz_ldap ajoute le support des groupes imbriqu�s.
mod_ldap apporte les directives LDAPConnectionPoolTTL et LDAPTimeout, ainsi que d'autres am�liorations dans le traitement des d�lais. Ceci s'av�re utile pour les configurations o� un pare-feu � m�moire d'�tat (stateful) rej�te les connexions inactives vers le serveur LDAP.
mod_ldap propose la directive LDAPLibraryDebug qui permet de journaliser les informations de d�bogage fournies par la bo�te � outils LDAP utilis�e.
mod_info
mod_info est maintenant capable d'afficher la configuration pr�interpr�t�e sur stdout au cours du d�marrage du serveur.
mod_auth_basic
Nouveau m�canisme g�n�rique permettant d'effectuer une authentification basique (disponible � partir de la version 2.4.5).
top

Am�liorations des programmes

fcgistarter
Nouvel utilitaire pour le d�marrage des d�mons FastCGI.
htcacheclean
Les URLs pr�sentes dans le cache peuvent maintenant �tre affich�es, accompagn�es �ventuellement de leurs m�tadonn�es.
Possibilit� de supprimer explicitement des URLs individuelles pr�sentes dans le cache.
Les tailles de fichiers peuvent maintenant �tre arrondies au multiple de la taille de bloc donn�e, les limites de taille collant de ce fait d'avantage � la taille r�elle sur disque.
La taille du cache peut maintenant �tre limit�e par le nombre d'inodes, en plus de la possibilit� de limitation par la taille des fichiers.
rotatelogs
Possibilit� de cr�er un lien vers le fichier journal courant.
Possibilit� d'invoquer un script personnalis� apr�s la rotation.
htpasswd, htdbm
Support de l'algorithme bcrypt (disponible � partir de la version 2.4.4).
top

Documentation

mod_rewrite
La documentation du module mod_rewrite a �t� r�organis�e et presque enti�rement r��crite en mettant l'accent sur les exemples et l'utilisation courante, ainsi que sur l'incitation � utiliser d'autres solutions lorsque cela s'av�re plus appropri�. Le document Rewrite Guide constitue maintenant une section de premier niveau ; il est mieux organis� et contient beaucoup plus de d�tails.
mod_ssl
La documentation du module mod_ssl a �t� grandement am�lior�e, avec plus d'exemples et un niveau "Bien d�marrer" qui s'ajoutent aux d�tails techniques d�j� pr�sents dans la pr�c�dente documentation.
Caching Guide
Le Guide de la mise en cache a �t� r��crit afin de bien faire la diff�rence entre les fonctionnalit�s de mise en cache de la RFC2616 HTTP/1.1 fournies par le module mod_cache, et la mise en cache g�n�rique de type cl�/valeur fournie par l'interface socache, mais aussi pour couvrir la mise en cache sp�cialis�e fournie par des m�canismes tels que ceux du module mod_file_cache.
top

Modifications concernant les d�veloppeur de modules

Ajout de code pour la v�rification de la configuration
Une nouvelle fonction, check_config, a �t� ajout�e et s'ex�cute entre les fonctions pre_config et open_logs. Elle s'ex�cute aussi avant la fonction test_config si l'option -t est pass�e au d�mon httpd. La fonction check_config permet aux modules de v�rifier l'interd�pendance des valeurs des directives de configuration et d'ajuster ces valeurs, alors que les messages du serveur peuvent encore �tre affich�s sur la console. L'utilisateur est ainsi averti des erreurs de configuration avant que la fonction du noyau open_logs ne redirige les sorties de la console vers le journal des erreurs.
Ajout d'un analyseur syntaxique d'expressions
Nous disposons � pr�sent d'un analyseur g�n�rique d'expressions, dont l'API est d�crite dans ap_expr.h. Il s'agit d'une adaptation de l'analyseur qu'on trouvait auparavant dans mod_ssl.
Conteneurs de logique d'autorisation
Afin de fournir une logique d'autorisation avanc�e via des directives telles que <RequireAll>, les modules d'autorisation s'enregistrent maintenant en tant que fournisseur par le biais de ap_register_auth_provider().
Interface de mise en cache des petits objets
Le fichier d'en-t�tes ap_socache.h fournit une interface � base de fournisseur pour la mise en cache des petits objets de donn�es, en s'inspirant de l'impl�mentation pr�c�dente du cache de session par mod_ssl. Sont support�s actuellement : les fournisseurs utilisant un tampon cyclique en m�moire partag�e, les fichiers dbm sur disque, et les caches distribu�s de type memcache.
Ajout du point d'ancrage Cache Status
Le module mod_cache inclut maintenant un nouveau point d'ancrage, cache_status, qui est appel� lorsque la d�cision � propos de la mise en cache est connue. Il en existe une impl�mentation par d�faut qui ajoute les en-t�tes optionnels X-Cache et X-Cache-Detail � la r�ponse.

La documentation du d�veloppeur contient une liste d�taill�e des modifications de l'API.

Langues Disponibles:  en  |  fr  |  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.
Comments are disabled for this page at the moment.