Apache est un logiciel de ligne de commande open source, multi-plateforme et entièrement gratuit conçu pour implémenter un serveur Web sur tout système d’exploitation Linux et UNIX pour servir des fichiers via les protocoles HTTP et HTTPS. .
Le logiciel de serveur Web le plus utilisé dans le monde
C'est le logiciel de serveur Web le plus utilisé au monde, desservant des centaines de milliers de sites Web sur Internet. C'est un plugin très sécurisé, facile à maintenir, efficace, peu gourmand en ressources et extensible. Apache est toujours compatible avec les dernières normes HTTP.
Bien qu'Apache ne soit installé que par des administrateurs système qualifiés sur des ordinateurs conçus pour agir en tant que serveurs, il peut également être installé par les utilisateurs habituels sur leurs ordinateurs personnels à des fins de test uniquement, telles que la conception Web ou le développement d'applications Web.
Démarrer avec Apache
L’ancienne méthode d’installation d’Apache consiste à télécharger le dernier paquet source stable (sachez que plusieurs branches stables sont conservées simultanément, telles que 2.2.x ou 2.4.x), en l’enregistrant sur votre ordinateur, ainsi que l'extraction de son contenu à l'aide d'un utilitaire de gestion d'archives.
Ouvrez une application d’émulateur de terminal, déplacez-vous vers l’emplacement des fichiers d’archive extraits à l’aide du fichier cd & rsquo; commande (par exemple, cd /home/softoware/httpd-2.4.10) et exécutez la commande & lsquo; commande pour configurer et compiler le logiciel pour votre architecture de système d'exploitation / matériel (les architectures de processeur 32 bits et 64 bits sont actuellement prises en charge).
Ensuite, installez-le à l’échelle du système en exécutant le fichier «installer sudo». commander. Après l'installation, consultez le fichier de configuration par défaut situé dans /usr/local/apache2/conf/httpd.conf ou /usr/apache2/conf/httpd.conf et ajustez les paramètres selon vos besoins (voir la page d'accueil du projet). pour plus de détails). Le service httpd est généralement lancé automatiquement au démarrage, si vous l'avez ajouté à la
Nouveautés de cette version:
- Les nouvelles fonctionnalités incluent les MPM chargeables, les améliorations majeures apportées à la prise en charge OCSP, mod_lua, la configuration Dynamic Reverse Proxy, l’authentification / autorisation améliorée, le proxy FastCGI, le nouvel analyseur d’expression et une API Small Object Caching.
Nouveautés dans la version 2.4.33:
- Nouvelles fonctionnalités: MPM chargeables, améliorations majeures de la prise en charge OCSP, mod_lua, configuration du proxy inverse dynamique, authentification / autorisation améliorée, proxy FastCGI, nouvel analyseur d'expression et API de mise en cache des petits objets.
Nouveautés dans la version:
- Les nouvelles fonctionnalités incluent les MPM chargeables, des améliorations majeures du support OCSP, mod_lua Configuration de proxy inverse dynamique, authentification / autorisation améliorée, proxy FastCGI, nouvel analyseur d’expression et API de mise en cache de petits objets.
Nouveautés dans la version 2.4.27:
- Les nouvelles fonctionnalités incluent les MPM chargeables, des améliorations majeures pour OCSP support, mod_lua, configuration du proxy inverse dynamique, authentification / autorisation améliorée, proxy FastCGI, nouvel analyseur d'expression et API de mise en cache des petits objets.
Nouveautés dans la version 2.4.25:
- Les nouvelles fonctionnalités incluent les MPM chargeables, améliorations majeures d’OCSP support, mod_lua, configuration du proxy inverse dynamique, authentification / autorisation améliorée, proxy FastCGI, nouvel analyseur d'expression et API de mise en cache des petits objets.
Nouveautés dans la version 2.4.23:
- Nouvelles fonctionnalités: MPM chargeables, améliorations majeures de la prise en charge OCSP, mod_lua, configuration du proxy inverse dynamique, authentification / autorisation améliorée, proxy FastCGI, nouvel analyseur d'expression et API de mise en cache des petits objets.
Nouveautés dans la version 2.4.20:
- Les nouvelles fonctionnalités incluent les MPM chargeables, des améliorations majeures pour OCSP support, mod_lua, configuration du proxy inverse dynamique, authentification / autorisation améliorée, proxy FastCGI, nouvel analyseur d'expression et API de mise en cache des petits objets.
Nouveautés dans la version 2.4.18:
- Les nouvelles fonctionnalités incluent des MPM chargeables, des améliorations majeures pour OCSP support, mod_lua, configuration du proxy inverse dynamique, authentification / autorisation améliorée, proxy FastCGI, nouvel analyseur d'expression et API de mise en cache des petits objets.
Nouveautés dans la version 2.4.17:
- Les nouvelles fonctionnalités incluent les MPM chargeables, des améliorations majeures à OCSP support, mod_lua, configuration du proxy inverse dynamique, authentification / autorisation améliorée, proxy FastCGI, nouvel analyseur d'expression et API de mise en cache des petits objets.
Nouveautés dans la version 2.4.16:
- Nouvelles fonctionnalités: MPM chargeables, améliorations majeures de la prise en charge OCSP, mod_lua, configuration du proxy inverse dynamique, authentification / autorisation améliorée, proxy FastCGI, nouvel analyseur d'expression et API de mise en cache des petits objets.
Nouveautés dans la version 2.4.12:
- Cette version d’Apache est la dernière version de la nouvelle génération de la branche 2.4.x d’Apache HTTPD représente quinze années d’innovation par rapport au projet et est recommandée par rapport à toutes les versions précédentes.
- Cette version d’Apache est principalement une version de sécurité et de correction de bogue.
Nouveautés dans la version 2.4.10:
- Cette version d’Apache est principalement une version de sécurité, de fonctionnalité et de correction de bogue:
- CVE-2014-0117 mod_proxy: Correction d'un crash dans la gestion des en-têtes de connexion qui permettait une attaque par déni de service contre un proxy inverse avec un MPM threadé.
- CVE-2014-3523 Correction d'un déni de service de consommation de mémoire dans le MPN WinNT (utilisé dans toutes les installations Windows). Solution: AcceptFilter {none | connect}
- CVE-2014-0226 Corrigez une condition de concurrence dans la gestion du tableau de bord, ce qui pourrait entraîner un débordement de la mémoire tampon.
- CVE-2014-0118 mod_deflate: le filtre d'entrée DEFLATE (gonfle les corps de la requête) limite désormais la longueur et le taux de compression des corps de requête gonflés pour éviter le refus de services via des corps hautement compressés. Voir les directives DeflateInflateLimitRequestBody, DeflateInflateRatioLimit et DeflateInflateRatioBurst.
- CVE-2014-0231 mod_cgid: corrige un déni de service contre les scripts CGI qui ne consomment pas stdin, ce qui pourrait entraîner la persistance de processus fils HTTPD remplissant le tableau de bord et éventuellement suspendre le serveur. Par défaut, la temporisation d'E / S du client (directive Timeout) s'applique désormais à la communication avec les scripts. La directive CGIDScriptTimeout peut être utilisée pour définir un délai d'expiration différent pour la communication avec les scripts.
- Dans cette version, vous trouverez également de nouvelles fonctionnalités intéressantes, notamment:
- Améliorations du proxy FGI et des Websockets
- Fonction proxy via le gestionnaire
- Contrôle plus fin du cadrage de RewriteRules
- Prise en charge du socket de domaine Unix (UDS) pour les backends mod_proxy.
- Prise en charge de plus grandes tailles de mémoire partagée pour mod_socache_shmcb
- mod_lua et mod_ssl
- Prend en charge les groupes nommés et les références arrière dans les directives LocationMatch, DirectoryMatch, FilesMatch et ProxyMatch.
Améliorations de
Nouveautés dans la version 2.2.26:
- mod_dav: dav_resource- & gt; uri traité comme non codé. Il s’agissait d’une modification inutile de l’ABI introduite dans le 2.2.25 PR 55397.
- mod_dav: ne validez pas les verrous contre la collection parent de l'URI source COPY. PR 55304.
- mod_ssl: Vérifiez le nom d'hôte SNI par rapport à l'en-tête de l'hôte, sans tenir compte de la casse. PR 49491.
- mod_ssl: active le support des clés ECC et des chiffrements ECDH. Testé contre OpenSSL 1.0.0b3.
- mod_ssl: Désactivez la valeur par défaut pour SSLCompression, car la compression entraîne des problèmes de sécurité dans la plupart des configurations. (Attaque dite "CRIME").
- mod_ssl: corrige l'erreur de compilation lorsque OpenSSL ne contient pas de support pour SSLv2. Le problème a été introduit dans 2.2.25. PR 55194.
- mod_dav: corrige le double codage des URI dans les en-têtes XML et Location (causés par les modifications non intentionnelles de l'ABI dans la version 2.2.25). PR 55397.
Nouveautés dans la version 2.4.7:
- APR 1.5.0 ou ultérieur est désormais requis pour l’événement MPM.
- slotmem_shm: Détection d'erreur. [Jim Jagielski]
- event: Utiliser la structure de données skiplist. [Jim Jagielski]
- mpm_unix: Ajoutez l'implémentation ap_mpm_podx_ * pour éviter la duplication de code et aligner w / trunk. [Jim Jagielski]
- Corrige le rejet éventuel des directives MaxMemFree et ThreadStackSize valides. [Mike Rumph]
- mod_proxy_fcgi: Supprime la limite de 64 Ko sur la longueur codée de tous les envvars. Un envvar individuel avec une longueur codée de plus de 16 Ko sera omis. [Jeff Trawick]
- mod_proxy_fcgi: gère les données de protocole de lecture qui sont divisées entre les paquets. [Jeff Trawick]
- mod_ssl: améliorez le traitement des clés éphémères DH et ECDH en autorisant la configuration des paramètres personnalisés via SSLCertificateFile et en ajoutant des paramètres DH standardisés pour les bits 1024/2048/3072/4096. À moins que les paramètres personnalisés ne soient configurés, les paramètres standardisés sont appliqués en fonction de la taille de la clé RSA / DSA du certificat. [Marque Kaspar]
- mod_ssl, configure: nécessite OpenSSL 0.9.8a ou ultérieur. [Kaspar Brand]
- mod_ssl: supprime le support des chiffrements de qualité export avec des clés RSA éphémères et désactive inconditionnellement les chiffrements aNULL, eNULL et EXP (non remplaçable via SSLCipherSuite). [Marque Kaspar]
- Ajouter un système de génération expérimental basé sur cmake pour Windows. [Jeff Trawick, Tom Donovan]
- event MPM: corrige des pannes possibles (modules tiers accédant à c- & gt; sbh) ou des mises à jour occasionnelles de mod_status pour certaines requêtes keepalive sous charge. [Eric Covener]
- mod_authn_socache: prend en charge les arguments d'initialisation facultatifs pour les fournisseurs de socache. [Chris Darroch]
- mod_session: réinitialise l'âge maximum à l'enregistrement de la session. PR 47476. [Alexey Varlamov]
- mod_session: Après avoir analysé la valeur de l'en-tête spécifiée par la directive SessionHeader, supprimez la valeur de la réponse. PR 55279. [Graham Leggett]
- mod_headers: autorise les spécificateurs de format dans la chaîne de substitution lors de l'utilisation de l'édition d'en-tête. [Daniel Ruggeri]
- mod_dav: dav_resource- & gt; uri est traité comme non codé. Il s’agissait d’un changement d’ABI inutile introduit au 2.4.6. PR 55397.
- mod_dav: Ne nécessite pas de jeton de verrouillage pour la source COPY. PR 55306.
- core: ne tronque pas la sortie lorsque l'envoi est interrompu par un signal, par exemple par un processus CGI existant. PR 55643. [Jeff Trawick]
- WinNT MPM: quittez l'enfant si le processus parent se bloque ou est arrêté. [Oracle Corporation]
- Windows: échec correct de la suppression de stderr dans certaines configurations du journal des erreurs. (Message d'erreur AH00093) [Jeff Trawick]
- mod_session_crypto: Autorise l'utilisation des appels exec: pour obtenir une clé de chiffrement de session. [Daniel Ruggeri]
- core: Ajouter la phrase-motif manquante dans les en-têtes de réponse HTTP. PR 54946. [Rainer Jung]
- mod_rewrite: Rendez la réécriture websocket-compatible pour permettre le proxy. PR 55598. [Chris Harris]
- mod_ldap: Lorsque vous recherchez des sous-groupes, utilisez un objectClass = * implicite au lieu d'un filtre explicite cn = *. [David Hawes]
- ab: Ajouter le temps d'attente, corriger le temps de traitement et générer des erreurs d'écriture uniquement si elles se sont produites. [Christophe Jaillet]
- worker MPM: ne forcez pas à tuer les threads de travail si le processus fils se termine correctement. [Oracle Corporation]
- core: apachectl -S imprime deux fois des hôtes virtuels basés sur des noms génériques. PR54948 [Eric Covener]
- mod_auth_basic: Ajout de la directive AuthBasicUseDigestAlgorithm pour permettre la migration des mots de passe de l’authentification à l’authentification de base. [Chris Darroch]
- ab: Ajouter un nouveau paramètre -l pour ne pas vérifier la longueur des réponses. Cela peut être utile avec des pages dynamiques. PR9945, PR27888, PR42040 [] Empêche le formatage des messages de démarrage écrits sur la console lorsque ErrorLogFormat est utilisé. [Jeff Trawick]
- mod_auth_digest: soyez plus précis lorsque le domaine ne correspond pas, car le domaine n’a pas été spécifié. [Graham Leggett]
- mod_proxy: ajoute une note dans le gestionnaire d'équilibrage indiquant si les modifications seront ou non persistantes et si les paramètres sont hérités. [Daniel Ruggeri, Jim Jagielski]
- mod_cache: évitez un plantage avec strcmp () lorsque le nom d'hôte n'est pas fourni. [Graham Leggett]
- core: Ajoutez util_fcgi.h et les définitions associées et les routines de support pour FastCGI, basées en grande partie sur mod_proxy_fcgi. [Jeff Trawick]
- mod_headers: Ajouter 'nom-en-tête-note nom-en-tête' pour copier une valeur d'en-tête de réponse dans une note. [Eric Covener]
- mod_headers: Ajoute la commande 'setifempty' à Header et RequestHeader. [Eric Covener]
- mod_logio: nouveau spécificateur de format% S (somme) qui est la somme des nombres d'octets reçus et envoyés. PR54015 [Christophe Jaillet]
- mod_deflate: améliorez la détection des erreurs lors de la décompression des corps de requête avec des erreurs de traitement: gérez les cas où les octets de fin sont dans le même compartiment. [Rainer Jung]
- mod_authz_groupfile, mod_authz_user: Réduit la gravité de AH01671 et AH01663 de ERROR à DEBUG, car ces modules ne savent pas ce que mod_authz_core fait avec leur valeur de retour AUTHZ_DENIED. [Eric Covener]
- mod_ldap: ajoutez TRACE5 pour les tentatives LDAP. [Eric Covener]
- mod_ldap: réessayez lors de l'expiration d'un délai LDAP pendant l'authn. [Eric Covener]
- mod_ldap: modifiez & quot; LDAPReferrals désactivez & quot; définir réellement l'option SDK LDAP sous-jacente sur OFF et introduire "LDAPReferrals default" pour prendre le SDK par défaut, sans rebind l'authentification callback. [Jan Kaluza]
- core: Enregistrez un message sur TRACE1 lorsque le client interrompt une connexion. [Eric Covener]
- WinNT MPM: ne plante pas lors de l'initialisation du processus enfant si le protocole Listen n'est pas reconnu. [Jeff Trawick]
- modules: corrige certains avertissements du compilateur. [Guenter Knauf]
- Sync 2.4 et trunk - Évitez l’allocation de mémoire et travaillez lorsque TRACE1 n’est pas activé - corrigez typo Sauvegarder quelques cycles [Christophe Jaillet]
- mod_filter: Ajouter & quot; change = no & quot; comme un proto-drapeau à FilterProtocol pour supprimer les drapeaux initiaux d'un fournisseur définis lors de l'enregistrement. [Eric Covener]
- core, mod_ssl: permet à un module d'inverser le sens d'un événement de sondage d'une lecture à une écriture ou inversement. C'est une étape pour permettre à mod_ssl de tirer pleinement parti de l'événement MPM. [Graham Leggett]
- Makefile.win: Installez le fichier DLL pcre approprié lors de l’installation de la version de débogage. PR 55235. [Ben Reser]
- mod_ldap: corrige une fuite de mémoire potentielle ou une corruption. PR 54936. [Zhenbo Xu]
- ab: corrige les éventuels dépassements de mémoire tampon lors du traitement des options de ligne de commande T et X. PR 55360. [Mike Rumph]
- fcgistarter: Spécifiez SO_REUSEADDR pour autoriser le démarrage d'un serveur avec d'anciennes connexions dans TIME_WAIT. [Jeff Trawick]
- core: Ajoute le hook open_htaccess qui, associé à dirwalk_stat et post_perdir_config (introduit dans 2.4.5), permet d'utiliser mpm-itk sans patchs sur httpd core. [Stefan Fritsch]
- support / htdbm: correction du traitement du commutateur de ligne de commande -t. Régression introduite dans 2.4.4
Nouveautés dans la version 2.4.1:
- Améliorations du noyau:
- MPM chargeables au moment de l'exécution
- Plusieurs MPM peuvent maintenant être construits en tant que modules chargeables au moment de la compilation. Le MPM de votre choix peut être configuré au moment de l'exécution.
- Evénement MPM
- L’événement MPM n’est plus expérimental mais est maintenant totalement supporté.
- Support asynchrone
- Meilleure prise en charge de la lecture / écriture asynchrone pour la prise en charge des MPM et des plates-formes.
- Configuration LogLevel par module et par répertoire
- Le LogLevel peut maintenant être configuré par module et par répertoire. De nouveaux niveaux trace1 à trace8 ont été ajoutés au-dessus du niveau du journal de débogage.
- Sections de configuration par requête
- , et des sections peuvent être utilisées pour définir la configuration en fonction de critères par demande.
- Analyseur d’expressions à usage général
- Un nouvel analyseur d’expression permet de spécifier des conditions complexes à l’aide d’une syntaxe commune dans des directives telles que SetEnvIfExpr, RewriteCond, Header et autres.
- KeepAliveTimeout en millisecondes
- Il est maintenant possible de spécifier KeepAliveTimeout en millisecondes.
- Directive NameVirtualHost
- N'est plus nécessaire et est maintenant obsolète.
- Remplacer la configuration
- La nouvelle directive AllowOverrideList permet un contrôle plus précis des directives autorisées dans les fichiers .htaccess.
- Variables du fichier de configuration
- Il est maintenant possible de définir des variables dans la configuration, permettant une représentation plus claire si la même valeur est utilisée à de nombreux endroits de la configuration.
- Réduction de l’utilisation de la mémoire
- Malgré de nombreuses nouvelles fonctionnalités, 2.4.x a tendance à utiliser moins de mémoire que 2.2.x.
- Nouveaux modules:
- mod_proxy_fcgi
- Backend du protocole FastCGI pour mod_proxy
- mod_proxy_scgi
- Backend du protocole SCGI pour mod_proxy
- mod_proxy_express
- Fournit des proxys de masse inversés configurés dynamiquement pour mod_proxy
- mod_remoteip
- Remplace l'adresse IP distante et le nom d'hôte du client pour la requête par la liste d'adresses IP présentée par un proxy ou un équilibreur de charge via les en-têtes de requête.
- mod_heartmonitor, mod_lbmethod_heartbeat
- Autorise mod_proxy_balancer à baser les décisions d'équilibrage de charge sur le nombre de connexions actives sur les serveurs principaux.
- mod_proxy_html
- Ce module, autrefois tiers, prend en charge la correction des liens HTML dans une situation de proxy inverse, où le backend génère des URL qui ne sont pas valides pour les clients du proxy.
- mod_sed
- Un remplacement avancé de mod_substitute, permet d'éditer le corps de la réponse avec toute la puissance de sed.
- mod_auth_form
- Permet l’authentification basée sur des formulaires.
- mod_session
- Permet de conserver l’état de session pour les clients, en utilisant un cookie ou un stockage de base de données.
- Mod_allowmethods
- Nouveau module pour restreindre certaines méthodes HTTP sans interférer avec l'authentification ou l'autorisation.
- mod_lua
- Intègre le langage Lua dans httpd, pour la configuration et les fonctions de logique métier. (Expérimental)
- mod_log_debug
- Permet d'ajouter une journalisation de débogage personnalisable à différentes phases du traitement de la requête.
- mod_buffer
- Permet de mettre en mémoire tampon les piles de filtres d’entrée et de sortie
- mod_data li>
- Convertir le corps de la réponse en une URL de données RFC2397
- mod_ratelimit
- Fournit une limitation du débit de la bande passante pour les clients
- mod_request
- Fournit des filtres pour gérer et rendre disponibles les corps de requête HTTP
- mod_reflector
- Fournit la réflexion d'un corps de requête sous forme de réponse via la pile de filtres de sortie.
- mod_slotmem_shm
- Fournit un fournisseur de mémoire partagée basé sur les emplacements (ala le tableau de bord).
- mod_xml2enc
- Ce module, autrefois tiers, prend en charge l’internationalisation des modules de filtrage basés sur libxml2 (sensibles au balisage).
- Améliorations du module:
- mod_ssl
- mod_ssl peut maintenant être configuré pour utiliser un serveur OCSP afin de vérifier l'état de validation d'un certificat client. Le répondeur par défaut est configurable, de même que la décision de préférer le répondeur désigné dans le certificat client lui-même.
- mod_ssl prend désormais en charge l'agrafage OCSP, où le serveur obtient de manière proactive une vérification OCSP de son certificat et la transmet au client pendant la prise de contact.
- mod_ssl peut maintenant être configuré pour partager les données de session SSL entre les serveurs via memcached
- Les clés EC sont désormais prises en charge en plus de RSA et DSA.
- mod_proxy
- La directive ProxyPass est maintenant configurée de manière optimale dans un bloc Location ou LocationMatch et offre un avantage de performance significatif par rapport à la syntaxe traditionnelle à deux paramètres lorsqu'elle est présente en grand nombre.
- L'adresse source utilisée pour les demandes de proxy est désormais configurable.
- mod_proxy_balancer
- Plus de modifications de la configuration d’exécution pour BalancerMembers via balancer-manager
- Des BalancerMembers supplémentaires peuvent être ajoutés lors de l'exécution via un équilibreur-gestionnaire
- Configuration d'exécution d'un sous-ensemble de paramètres de l'équilibreur
- Les BalancerMembers peuvent être définis sur «Drain» pour ne répondre qu'aux sessions existantes, ce qui leur permet d'être déconnectés.
- Les paramètres de l’équilibreur peuvent être persistants après les redémarrages.
- mod_cache
- mod_cache peut maintenant mettre en cache les requêtes HEAD.
- Dans la mesure du possible, les directives mod_cache peuvent désormais être définies par répertoire et non par serveur.
- L'URL de base des URL mises en cache peut être personnalisée afin qu'un cluster de caches puisse partager le même préfixe d'URL de point de terminaison.
- mod_cache est maintenant capable de servir des données mises en cache obsolètes lorsqu'un backend est indisponible (erreur 5xx).
- mod_cache peut maintenant insérer HIT / MISS / REVALIDATE dans un en-tête X-Cache.
- mod_include
- Prise en charge de l’attribut 'onerror' dans un élément 'include', permettant à un document d’erreur d’être servi en erreur au lieu de la chaîne d’erreur par défaut.
- mod_cgi, mod_include, mod_isapi, ...
- La traduction des en-têtes vers les variables d'environnement est plus stricte qu'auparavant afin d'atténuer certaines attaques par script inter-sites via l'injection d'en-tête. Les en-têtes contenant des caractères non valides (y compris les caractères de soulignement) sont désormais supprimés en silence. Les variables d'environnement dans Apache contiennent des indications sur la manière de contourner les clients hérités qui ont besoin 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 logique d'autorisation avancée peut maintenant être spécifiée à l'aide de la directive Require et des directives de conteneur associées, telles que.
- mod_rewrite
- mod_rewrite ajoute les indicateurs [QSD] (Query String Discard) et [END] pour RewriteRule afin de simplifier les scénarios de réécriture courants.
- Ajout de la possibilité d’utiliser des expressions booléennes complexes dans RewriteCond.
- Permet d'utiliser des requêtes SQL en tant que fonctions RewriteMap.
- mod_ldap, mod_authnz_ldap
- mod_authnz_ldap ajoute le support pour les groupes imbriqués.
- mod_ldap ajoute LDAPConnectionPoolTTL, LDAPTimeout et d'autres améliorations dans la gestion des délais d'attente. Ceci est particulièrement utile pour les configurations où un pare-feu avec état supprime les connexions inactives sur le serveur LDAP.
- mod_ldap ajoute LDAPLibraryDebug pour consigner les informations de débogage fournies par la boîte à outils LDAP utilisée.
- mod_info
- mod_info peut maintenant transférer la configuration pré-analysée à la sortie standard au démarrage du serveur.
- Améliorations du programme:
- fcgistarter
- Nouvel utilitaire de démarrage FastCGI deamon
- Htcacheclean
- Les URL en cache actuelles peuvent maintenant être répertoriées, avec des métadonnées facultatives incluses.
- Autorise la suppression explicite des URL individuelles mises en cache dans le cache.
- La taille des fichiers peut maintenant être arrondie à la taille de bloc donnée, ce qui fait que les limites de taille sont plus proches de la taille réelle sur le disque.
- La taille du cache peut maintenant être limitée par le nombre d’inodes, au lieu d’être limité par la taille des fichiers sur le disque.
- rotatelogs
- Peut maintenant créer un lien vers le fichier journal actuel.
- Peut maintenant appeler un script post-rotation personnalisé.
- Documentation:
- mod_rewrite
- La documentation de mod_rewrite a été réorganisée et presque complètement réécrite, en mettant l’accent sur les exemples et les usages courants, ainsi que pour vous montrer quand d’autres solutions sont plus appropriées. Le Rewrite Guide est maintenant une section de haut niveau avec beaucoup plus de détails et une meilleure organisation.
- mod_ssl
- La documentation de mod_ssl a été grandement améliorée, avec d’autres exemples au niveau de la mise en route, en plus du focus précédent sur les détails techniques.
- Modifications apportées au module de développement:
- Vérification du crochet de configuration ajouté
- Un nouveau hook, check_config, a été ajouté, qui s'exécute entre les hooks pre_config et open_logs. Il s'exécute également avant le hook test_config lorsque l'option -t est transmise à httpd. Le hook check_config permet aux modules de vérifier les valeurs des directives de configuration interdépendantes et de les ajuster pendant que les messages peuvent toujours être consignés sur la console. L'utilisateur peut ainsi être averti de problèmes de configuration avant que la fonction crochet open_logs ne redirige la sortie de la console vers le journal des erreurs.
- Analyseur d’expression ajouté
- Nous avons maintenant un analyseur d’expression polyvalent, dont l’API est exposée dans ap_expr.h. Ceci est adapté de l'analyseur d'expression précédemment implémenté dans mod_ssl.
- Conteneurs de logique d'autorisation
- Les modules d’autorisation s’enregistrent maintenant en tant que fournisseur, via ap_register_auth_provider (), pour prendre en charge la logique d’autorisation avancée, telle que.
- Interface de mise en cache de petits objets
- L'en-tête ap_socache.h expose une interface basée sur le fournisseur pour la mise en cache de petits objets de données, basée sur l'implémentation précédente du cache de session mod_ssl. Les fournisseurs utilisant un tampon cyclique à mémoire partagée, des fichiers dbm sur disque et un cache distribué memcache sont actuellement pris en charge.
- Crochet d’état du cache ajouté
- Le module mod_cache inclut désormais un nouveau hook cache_status, appelé lorsque la décision de mise en cache est connue. Une implémentation par défaut est fournie qui ajoute un en-tête X-Cache et X-Cache-Detail facultatif à la réponse.
Nouveautés dans la version 2.3.15 Beta:
- SECURITE: CVE-2011-3348 (cve.mitre.org)
- mod_proxy_ajp: Répondez avec HTTP_NOT_IMPLEMENTED lorsque la méthode n'est pas reconnue.
- SECURITE: CVE-2011-3192 (cve.mitre.org)
- core: correction du traitement des requêtes d’octet pour utiliser moins de mémoire, afin d’éviter un déni de service. Si la somme de toutes les plages d'une demande est supérieure au fichier d'origine, ignorez les plages et envoyez le fichier complet. PR 51714.
- SECURITE: CVE-2011-3607 (cve.mitre.org)
- core: corrige le débordement d'entier dans ap_pregsub. Cela peut être déclenché, par ex. avec mod_setenvif via un .htaccess malveillant.
- configure: Charge tous les modules dans la configuration par défaut générée lors de l’utilisation de --enable-load-all-modules.
- mod_reqtimeout: modifiez la valeur par défaut pour définir des valeurs de délai d'attente raisonnables.
- core, mod_dav_fs: modifiez l'ETag par défaut pour qu'il devienne "taille mtime", c'est-à-dire supprimez l'inode. PR 49623.
- mod_lua: expose les variables SSL via r: ssl_var_lookup ().
- mod_lua: LuaHook {AccessChecker, AuthChecker, CheckUserID, TranslateName} peuvent maintenant être exécutés en tant que & quot; début & quot; ou & quot; retard & quot; par rapport aux autres modules.
- configure: par défaut, ne chargez que les modules requis ou explicitement sélectionnés par un argument configure --enable-foo. Les instructions LoadModule pour les modules activés par l'option --enable-mods-shared = most et friends seront commentées.
- mod_lua: Empêchez les premiers hooks Lua (LuaHookTranslateName et LuaHookQuickHandler) d’être configurés dans, et htaccess où la configuration aurait été ignorée.
- mod_lua: résolvez & quot; essayez d'indexer 'r' local (une valeur userdata) & quot; erreurs dans les scripts LuaMapHandler
- mod_log_debug: Renommez l'argument facultatif from if = to expr =, pour être plus en accord avec les autres directives de configuration.
- mod_headers: nécessite une expression à spécifier avec expr =, pour être plus en accord avec les autres directives de configuration.
- mod_substitute: pour éviter l'utilisation excessive de la mémoire, limitez la longueur de ligne à 1 Mo.
- mod_lua: Rendez la chaîne de requête (r.args) accessible en écriture.
- mod_include: Ajout du support pour le codage et le décodage de l'application / x-www-form-urlencoded.
- rotatelogs: Ajoute l'option -c pour forcer la création de fichier journal dans chaque intervalle de rotation, même si elle est vide.
- core: Limitez ap_pregsub () à 64 Ko, ajoutez ap_pregsub_ex () pour les chaînes plus longues.
- mod_session_crypto: Refactor pour prendre en charge la nouvelle API apr_crypto.
- http: Ajouter l'en-tête Location manquant si le chemin URL local est utilisé comme ErrorDocument pour 30x.
- mod_buffer: Assurez-vous de ne pas utiliser les sous-requêtes, mais pas les redirections internes déclenchées par mod_rewrite.
- mod_lua: ajoutez r: construct_url comme un wrapper pour ap_construct_url.
- mod_remote_ip: corrige la configuration des proxys internes. PR 49272.
- mpm_winnt: Gère correctement le mode 'none' de AcceptFilter; résolvez l'adresse IP du serveur spécifique et l'adresse IP du client distant lors de la connexion.
- mod_setenvif: supprime la correspondance OID obsolète par SetEnvIfExpr avec PeerExtList ().
- mpm_prefork, mpm_worker, mpm_event: Si un enfant est créé juste avant le redémarrage gracieux, puis sort en raison d'un fichier manquant de verrouillage, ne pas arrêter le serveur entier. PR 39311.
- mpm_event: vérifiez la valeur de retour de ap_run_create_connection. PR: 41194.
- mod_mime_magic: ajoute des signatures pour PNG et SWF à l'exemple config. PR: 48352.
- core, unixd: Ajoutez l'option -D DUMP_RUN_CFG pour vider certains éléments de configuration de la configuration analysée (ou par défaut). Ceci est utile pour les scripts d'initialisation qui doivent configurer des répertoires et des autorisations temporaires.
- core, mod_actions, mod_asis: messages d'erreur du journal des erreurs de mise à niveau qui accompagnent un état de requête 404 à partir d'une erreur de niveau de journal à info. PR: 35768.
- core: Correction du tri avec les modules Perl. PR: 45076.
- core: Appliquer LimitRequestFieldSize après que plusieurs en-têtes du même nom ont été fusionnés.
- mod_ssl: Si MaxMemFree est défini, demandez à OpenSSL & gt; = 1.0.0 de réduire l'utilisation de la mémoire. PR 51618.
- mod_ssl: Au démarrage, lors de la vérification d’un certificat de serveur s’il correspond au nom de serveur configuré, prenez également en compte les entrées dNSName dans l’extension subjectAltName. PR 32652, PR 47051.
- mod_substitute: réduit l'utilisation de la mémoire et la copie des données. PR 50559.
- mod_ssl / proxy: active l’extension SNI pour les connexions TLS backend
- Ajoutez des wrappers pour malloc, calloc, realloc qui vérifient les situations de mémoire insuffisante et les utilisez à plusieurs endroits. PR 51568, PR 51569, PR 51571.
- Corrige la compilation croisée de mod_cgi / mod_cgid lorsque APR_HAVE_STRUCT_RLIMIT est faux mais que RLIMIT_ * sont définis. PR51371.
- core: Respectez correctement ServerName / ServerAlias si l'en-tête Host de la requête correspond à l'adresse VirtualHost. PR 51709.
- mod_unique_id: utilise un générateur de nombres aléatoires pour initialiser le compteur. PR 45110.
- core: Ajouter une API de commodité pour apr_random.
- core: Ajoutez les directives MaxRangeOverlaps et MaxRangeReversals pour contrôler le nombre de plages de recouvrement et d'inversion (respectivement) autorisées avant de renvoyer la ressource entière, avec une limite par défaut de 20.
- mod_ldap: La fonction optionnelle uldap_ssl_supported (r) renvoie toujours false si elle est appelée depuis un hôte virtuel avec les directives mod_ldap. N'a pas affecté l'utilisation de mod_ldap par mod_authnz_ldap.
- mod_filter: Au lieu de supprimer l'en-tête Accept-Ranges lorsqu'un filtre enregistré avec AP_FILTER_PROTO_NO_BYTERANGE est présent, définissez la valeur de l'en-tête sur "none".
- core: Autoriser MaxRanges none | unlimited | default et définir "Accept-Ranges: none" dans le cas Les gammes sont ignorées avec MaxRanges none.
- mod_ssl: réorganise la vérification de la révocation basée sur les listes de révocation de certificats lors de la validation des certificats des clients ou des serveurs mandatés. Déléguez complètement le traitement de la liste de révocation de certificats à OpenSSL et ajoutez une nouvelle directive [Proxy] CARevocationCheck pour contrôler le mode de vérification de la révocation.
- core: ajoute la directive MaxRanges pour contrôler le nombre de plages autorisées avant de renvoyer la ressource entière, avec une limite par défaut de 200.
- mod_cache: Assurez-vous que CacheDisable peut apparaître correctement dans un LocationMatch.
- mod_cache: Correction du déplacement du filtre CACHE, qui s’est arrêté par erreur si le filtre original n’avait pas été ajouté par configuration.
- mod_ssl: améliore la journalisation des erreurs de certificat. PR 47408.
- mod_authz_groupfile: Augmente à 16 Mo la limite de longueur des lignes du fichier de groupe. PR 43084.
- core: augmente la limite de longueur des lignes du fichier de configuration à 16 Mo. PR 45888. PR 50824.
- core: Ajouter une API pour les tampons redimensionnables.
- mod_ldap: activez LDAPConnectionTimeout pour les outils LDAP ayant LDAP_OPT_CONNECT_TIMEOUT au lieu de LDAP_OPT_NETWORK_TIMEOUT, tels que Tivoli Directory Server 6.3 et versions ultérieures.
- mod_ldap: modifiez le nombre de tentatives par défaut de 10 à 3 et ajoutez des directives LDAPRetries et LDAPRetryDelay.
- mod_authnz_ldap: Ne réessayez pas lors de l’authentification, car cela ne fait que multiplier les tentatives déjà effectuées par mod_ldap.
- configure: Permet de désactiver explicitement les modules même avec la sélection du module "reallyall".
- mod_rewrite: vérifie la validité de chaque interne (int :) RewriteMap même si RewriteEngine est désactivé dans le contexte du serveur, évitant ainsi un plantage en référençant l'int: map invalide à l'exécution. PR 50994.
- mod_ssl, configure: nécessite OpenSSL 0.9.7 ou ultérieur.
- mod_ssl: supprime la couche ssl_toolkit_compat.
- mod_ssl, configure, ab: prise en charge de la boîte à outils RSA BSAFE SSL-C.
- mod_usertrack: exécutez mod_usertrack plus tôt dans le hook fixups pour vous assurer que le cookie est défini lorsque des modules tels que mod_rewrite déclenchent une redirection. Utilisez également r- & gt; err_headers_out pour le cookie, pour la même raison. PR29755.
- mod_proxy_http, mod_proxy_connect: Ajoutez les notes de requête 'proxy-status' et 'proxy-source-port' pour la journalisation. PR 30195.
- configure: Active les modules ldap dans les sélections "all" et "most" si ldap est compilé dans apr-util.
- core: Ajouter ap_check_cmd_context () - vérifie si une commande est exécutée dans le fichier .htaccess.
- mod_deflate: corrige la boucle sans fin si le premier compartiment est constitué de métadonnées. PR 51590.
- mod_authn_socache: correction pour travailler dans .htaccess s'il n'est pas configuré n'importe où dans httpd.conf, et introduire une directive AuthnCacheEnable. PR 51991
- mod_xml2enc: nouveau module (anciennement tiers) prenant en charge l'internationalisation des filtres via la détection et la conversion intelligentes des jeux de caractères.
- mod_proxy_html: nouveau module (anciennement tiers) permettant de réparer les liens HTML dans une situation de proxy inverse, où un backend génère des URL qui ne peuvent pas être résolues par les clients.
Nouveautés dans la version 2.3.12 Bêta:
- Cette version inclut Apache Portable Runtime (APR ) la version 1.4.5 et APR-Util version 1.3.12 dans une archive tar distincte. Les bibliothèques APR doivent être mises à niveau pour que toutes les fonctionnalités de httpd fonctionnent correctement.
Commentaires non trouvées