Certaines modifications ont été apportées aux API Apache pour se conformer à l'évolution en HTTP/1.1 qui peuvent poser des problèmes de compatibilité. Il est possible que certains modules ne fonctionnent plus (en particulier, ceux qui traitent des requêtes utilisant les méthodes POST ou PUT). Si vous disposez d'un module défaillant, contactez son auteur. Une note pour les programmeurs sur ce sujet est disponible.
En outre, certains changements sont intervenus quant à l'environnement CGI qui peut conduire à des erreurs d'exécutions de certains scripts CGI. Si vous détectez des mauvais fonctionnements de scripts CGI qui tournaient correctement sous Apache 1.1.1, consultez notre explication des modifications.
De toutes nouvelles fonctionnalités sont apportées par cette remise à jour, étendant celles déjà supportées par Apache (lire aussi le fichier plus détaillé CHANGES dans le répertoire des sources). Comme le noyau a changé de façon significative, certaines "libertés" que l'on pouvait prendre dans la configuration de versions plus anciennes d'Apache (et du daemon NCSA) ne sont désormais plus permises - Voir les rubriques de compatibilité si vous rencontrez quelques problèmes.
Outre avoir corrigé un certain nombre de bogues majeurs et avoir amélioré les performances internes de manière significative, la version 1.2 d'Apache propose les toutes nouvelles fonctionnalités suivantes :
<Files> permettent d'appliquer des directives sur un nom de fichier, et non plus sur seulement un répertoire ou une URL. De plus, les sections <Files> peuvent maintenant apparaître dans des fichiers .htaccess. Les sections <Files>, conjointement aux sections <Directory> et <Location>, peuvent maintenant utiliser des expressions régulières, et non plus seulement un "motif" en préfixe de nom. User-Agent envoyée par le navigateur. En combinaison avec les XSSI, ceci permet d'écrire des fichiers HTML dont le contenu devient fonction du navigateur qui les adresse. mod_rewrite est désormais inclus. Ce module propose des fonctions puissantes de reroutage d'URL, à partir d'expressions régulières. Il n'y a virtuellement rien que ce module ne sache pas faire ! mod_log_config, optionnel dans les versions antérieures d'Apache, est désormais standard, et a été développé pour permettre l'obtention d'une trace beaucoup plus détaillée sur les transactions. Il peut être utilisé pour ouvrir plusieurs fichiers de trace simultanément (chacun sous un format de trace différent). Si votre configuration d'Apache écrit des traces dans un répertoire dans lequel peut écrire un autre utilisateur que celui qui démarre Apache, consultez les remarques sur la sécurité pour vous assurez que vous n'ouvrez pas une brèche de sécurité dans votre système. mod_cookies inclus dans les versions antérieures d'Apache a été renommé en mod_usertrack, afin que sa fonction soit plus explicite (certains utilisateurs ont pensé par inadvertence que ce module activait le support des cookies dans Apache, ce qui n'est pas exact - Apache supporte les cookies directement). Il est aujourd'hui possible de désactiver la génération de cookies, même si le module cookies est compilé. En outre, les cookies peuvent maintenant disposer d'un temps de péremption. ScriptLog permet maintenant de définir une trace qui enregistre toutes les entrées et sorties d'exécutions CGI en faute. Ceci inclue les variables d'environnement, les en-têtes d'arrivée, les données POSTées, les sorties, et bien d'autre. Ceci rend la mise au point des scripts CGI beaucoup plus facile. Options permet maintenant d'ajouter ou de retirer des options relativement à celles déjà en usage, plutôt que redéfinir le jeu d'options dans sa totalité. -h donne maintenant la liste de toutes les directives disponibles. mod_headers peut être utilisé pour ajouter une en-tête HTTP type dans les réponses. Cette en-tête peut s'ajouter aux en-têtes existantes, les remplacer, ou éliminer l'en-tête existante dans une réponse. <IfModule> permet d'activer des directives uniquement si le module spécifié a été compilé et est chargé dans le serveur. Satisfy permet des configurations de contrôle d'accès plus souples. Satisfy, MaxKeepAliveRequests, RedirectPermanent et RedirectTemp ; les directives suivantes ont maintenant une syntaxe plus conforme à la définition NCSA: AuthUserFile, AuthGroupFile, AuthDigestFile, KeepAlive et KeepAliveTimeout.