Afin d'assister les utilisateurs lors de leurs opérations de mise à
jour, nous maintenons un document
qui comporte des informations critiques à l'attention des personnes qui
utilisent déjà le serveur HTTP Apache. Ces informations
ne sont que de brèves notes, et vous
trouverez plus d'informations dans le document Nouvelles fonctionnalités, ou dans
le fichier src/CHANGES
. Les développeurs d'applications
et de modules trouveront un résumé des modifications de l'API dans la
vue d'ensemble Mises à jour de
l'API.
Ce document présente les changements de comportement du serveur qui peuvent nécessiter une modification de la configuration, et la manière d'utiliser la version 2.4 du serveur en parallèle avec la version 2.2. Pour tirer parti des nouvelles fonctionnalités de la version 2.4, reportez-vous au document "Nouvelles fonctionnalités".
Ce document ne décrit que les modifications intervenues entre les versions 2.2 et 2.4. Si vous effectuez une mise à jour depuis la version 2.0, vous devez aussi consulter le document de mise à jour de 2.0 vers 2.2.
Le processus de compilation est très similaire à celui de la
version 2.2. Dans la plupart des cas, vous pourrez utiliser votre
ancienne ligne de commande configure
(telle qu'elle
est enregistrée dans le fichier build/config.nice
situé dans le répertoire de compilation du serveur). Voici certains
changements intervenus dans la configuration par défaut :
Des changements significatifs dans la configuration de l'autorisation, ainsi que quelques changements mineurs, peuvent nécessiter une mise à jour des fichiers de configuration de la version 2.2 avant de les utiliser sous la version 2.4.
Tout fichier de configuration qui gère des autorisations devra probablement être mis à jour.
Vous devez vous reporter au document Authentification, autorisation et contrôle d'accès, et plus particulièrement à la section Plus loin qu'une simple autorisation qui explique les nouveaux mécanismes permettant de contrôler l'ordre dans lequel les directives d'autorisation sont appliquées.
Dans la version 2.2, le contrôle d'accès basé sur le nom d'hôte
du client, son adresse IP, ou d'autres caractéristiques de la
requête était assuré via les directives
Dans la version 2.4, ce contrôle d'accès est assuré, comme tout
contrôle d'autorisation, via le nouveau module
Voici quelques exemples de contrôle d'accès avec l'ancienne et la nouvelle méthode :
Dans cet exemple, toutes les requêtes sont rejetées :
Dans cet exemple, toutes les requêtes sont acceptées :
Dans l'exemple suivant, tous les hôtes du domaine example.org ont l'autorisation d'accès, tous les autres sont rejetés :
D'autres ajustements mineurs peuvent s'avérer nécessaires pour certaines configurations particulières, comme décrit ci-dessous.
none
. D'autres
directives de configuration la remplacent dans la version 2.4.
On
ou Off
.
Avant, toute valeur autre que "Off" ou "0" était traitée comme
"On".sessionid
pour correspondre à
/une-application/image.gif;jsessionid=123456789
,
vous devez maintenant utiliser la chaîne de correspondance
complète jsessionid
.
#if expr
utilise maintenant le
nouvel interpréteur d'expressions.
L'ancienne syntaxe peut être réactivée via la directive
DebugLevel
a été supprimée en faveur d'une
configuration de la directive DebugLevel
a été supprimée en faveur d'une
configuration de la directive *_DN
a changé. Il est cependant encore possible
d'utiliser l'ancien format via la nouvelle option
LegacyDNStringFormat
de la directive #if expr=
du module mod_authn_alias
dans les précédentes versions (en fait la directive
Tous les modules tiers doivent être recompilés pour la version 2.4 avant d'être chargés.
De nombreux modules tiers conçus pour la version 2.2 fonctionneront sans changement avec le serveur HTTP Apache version 2.4. Certains nécessiterons cependant des modifications ; se reporter à la vue d'ensemble Mise à jour de l'API.
Invalid command 'User', perhaps misspelled or defined by
a module not included in the server configuration
- chargez
le module Invalid command 'Require', perhaps misspelled or defined
by a module not included in the server configuration
, ou
Invalid command 'Order', perhaps misspelled or defined by a
module not included in the server configuration
- chargez
le module mixing * ports and non-* ports with a NameVirtualHost address is not supported
, Either NameVirtualHost w.x.y.z:n has no VirtualHosts, or there is more than one identical NameVirtualHost line, or your VirtualHost declarations do not match the NameVirtualHost line
- ces messages ne sont pas nouveaux, mais ils bloquent désormais le démarrage en générant une erreur_default_ is not allowed in NameVirtualHost directive
- ceci a toujours été le cas, mais à présent cette erreur bloque le démarrage du serveur.Ignoring deprecated use of DefaultType in line NN of
/path/to/httpd.conf
- supprimez la directive mixing * ports and non-* ports with a NameVirtualHost
address is not supported
, Either NameVirtualHost
w.x.y.z:n has no VirtualHosts, or there is more than one identical
NameVirtualHost line, or your VirtualHost declarations do not
match the NameVirtualHost line
-
ce ne sont pas des nouveaux messages, mais ils empêchent
maintenant le serveur de démarrer_default_ is not allowed in NameVirtualHost
directive
- l'explication est dans le message ; cette
définition n'a jamais été valide, mais elle empêche maintenant le
serveur de démarrer.configuration error: couldn't check user: /path
-
chargez le module