### Apache HTTP Server Version 2.1

# Mise à de la version 1.3 à la version 2.0

Afin d'aider les personnes souhaitant se mettre à jour, nous maintenons un document décrivant les informations critiques concernant les utilisateurs d'Apache. Ces informations sont sous la forme de brèves notes, et vous pouvez trouver plus d'informations dans le document Nouvelles fonctionnalités ou dans le fichier `src/CHANGES`.

### Changement de la configuration à la compilation

- Apache utilise maintenant `autoconf` et `libtool` afin de configurer la compilation. L'utilisation de ces outils est similaire, mais pas tout à fait identique, au système APACI de configuration existant dans la version 1.3 d'Apache.
- En plus de l'habituelle sélection de modules que vous pouvez choisir de compiler, Apache 2.0 a déplacé la majeure partie du traitement des requêtes dans les modules multi-traitements (MPMs).

### Changement de la configuration à l'exécution

- La directive `CacheNegotiatedDocs` prend maintenant un paramètre qui est soit `on` soit `off`. Les configurations existantes utilisant la directive `CacheNegotiatedDocs` doivent la remplacer par `CacheNegotiatedDocs on`.
- La directive `ErrorDocument` n'utilise plus de guillemets ou d'apostrophes au début du paramètre indiquant le message. Dorénavant, le message devra être entre guillemets. Par exemple, la directive

  > `ErrorDocument 403 "Some Message`

  devra être remplacé par

  > `ErrorDocument 403 "Some Message"`

  Si le second argument n'est pas une URL ou un chemin valide, il sera traité comme un message.
- Les directives `AccessConfig` et `ResourceConfig` n'existent plus. Ces directives peuvent être remplacées de manière équivalente par la directive `Include`. Si vous utilisiez ces directives en utilisant les valeurs par défaut sans les définir explicitement, vous devez ajouter les lignes `Include conf/access.conf` et `Include conf/srm.conf` dans votre fichier httpd.conf. Afin de garantir qu'Apache lit les différents fichiers de configuration dans le même ordre que celui pour les anciennes directives, Les directives `Include` doivent être situées à la fin du fichier httpd.conf, celle représentant `srm.conf` avant celle pour `access.conf`.
- La directive `BindAddress` n'existe plus. La même fonctionnalité est fournie par la directive `Listen`.
- La directive `ExtendedStatus` n'existe plus. Le suivi des statuts a été entièrement réécrit afin de bénéficier du nouveau système MPM.
- La directive `ServerType` n'existe plus. La méthode utilisée pour servir les requêtes est déterminée maintenant par la sélection d'un MPM. Il n'existe pas actuellement de MPM conçu pour être lancé par inetd.
- Beaucoup de directives qui étaient situées dans le noyau du serveur pour la version 1.3 se trouvent maintenant dans les MPMs.
- Les modules mod_log_agent et mod_log_referer qui traitaient les directives `AgentLog`, `RefererLog` et `RefererIgnore` ont été supprimés. Le traçage des agents et référants et toujours disponible en utilisant la directive CustomLog du module mod_log_config.

### Changements divers

- L'option `-S` du programme `httpd` qui servait à afficher la configuration des hôtes virtuels est remplacé par `-t -D DUMP_VHOSTS`.
- Le module mod_auth_digest, qui était expérimental dans la version 1.3, est maintenant un module standard.
- Le module mod_mmap_static, qui était expérimental dans la version 1.3 a été remplacé par le module mod_file_cache.

### Modules tiers

D'énormes changements ont été réalisés sur l'API du serveur Apache 2.0. Les modules conçus à l'aide de l'API Apache 1.3 ne fonctionneront pas sur Apache 2.0 sans modifications. Plus de détails sont fournis dans la documentation du développeur.

### Apache HTTP Server Version 2.1