| <?xml version="1.0" encoding="ISO-8859-1" ?> |
| <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd"> |
| <?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?> |
| <!-- French translation : Lucien GENTIS --> |
| <!-- Reviewed by : Vincent Deffontaines --> |
| <!-- English Revision : 1204356 --> |
| |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <manualpage metafile="upgrading.xml.meta"> |
| |
| <title>Mise à jour de la version 2.2 vers la version 2.4</title> |
| |
| <summary> |
| <p>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 <a |
| href="new_features_2_4.html">Nouvelles fonctionnalités</a>, ou dans |
| le fichier <code>src/CHANGES</code>. Les développeurs d'applications |
| et de modules trouveront un résumé des modifications de l'API dans la |
| vue d'ensemble <a href="developer/new_api_2_4.html">Mises à jour de |
| l'API</a>.</p> |
| |
| <p>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".</p> |
| |
| <p>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 |
| <a href="http://httpd.apache.org/docs/2.2/upgrading.html">document de mise |
| à jour de 2.0 vers 2.2.</a></p> |
| |
| </summary> |
| <seealso><a href="new_features_2_4.html">Vue d'ensemble des nouvelles |
| fonctionnalités du serveur HTTP Apache 2.4</a></seealso> |
| |
| <section id="compile-time"> |
| <title>Modifications des paramètres de compilation</title> |
| <p>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 <code>configure</code> (telle qu'elle |
| est enregistrée dans le fichier <code>build/config.nice</code> |
| situé dans le répertoire de compilation du serveur). Voici certains |
| changements intervenus dans la configuration par défaut :</p> |
| |
| <ul> |
| <li>Les modules suivants ont été supprimés : mod_authn_default, |
| mod_authz_default et mod_mem_cache. Si vous utilisiez |
| mod_mem_cache sous la version 2.2, vous devez maintenant utiliser |
| <module>mod_cache_disk</module> dans la version 2.4.</li> |
| |
| <li>Toutes les implémentations de répartition de charge ont été |
| déplacées vers des sous-modules spécifiques de mod_proxy, comme |
| <module>mod_lbmethod_bybusyness</module>. Vous devrez compiler et |
| chargés tous les modules correspondants que votre configuration |
| utilise.</li> |
| |
| <li>Le support de BeOS, TPF, et des anciennes plates-formes telles |
| que A/UX, Next, et Tandem a été supprimé, car |
| elles ne sont plus considérées comme maintenues.</li> |
| |
| <li>configure: les modules dynamiques (DSO) sont compilés par |
| défaut</li> |
| |
| <li>configure: par défaut, seul un jeu de modules de base est |
| chargé. Les autres directives <directive>LoadModule</directive> |
| sont mises en commentaires.</li> |
| |
| <li>configure: le jeu de modules "most" est compilé par défaut</li> |
| |
| <li>configure: le jeu de modules "reallyall" ajoute les modules de |
| développeur au jeu "all".</li> |
| </ul> |
| |
| </section> |
| |
| <section id="run-time"> |
| <title>Modifications de la configuration à l'exécution</title> |
| <p>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.</p> |
| |
| <section id="authz"> |
| <title>Autorisation</title> |
| |
| <p>Tout fichier de configuration qui gère des autorisations devra |
| probablement être mis à jour.</p> |
| |
| <p>Vous devez vous reporter au document <a |
| href="howto/auth.html">Authentification, autorisation et contrôle |
| d'accès</a>, et plus particulièrement à la section <a |
| href="howto/auth.html#beyond">Plus loin qu'une simple |
| autorisation</a> qui explique les nouveaux mécanismes permettant de |
| contrôler l'ordre dans lequel les directives d'autorisation sont |
| appliquées.</p> |
| |
| <section id="access"> |
| <title>Contrôle d'accès</title> |
| |
| <p>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 <directive |
| module="mod_access_compat">Order</directive>, <directive |
| module="mod_access_compat">Allow</directive>, <directive |
| module="mod_access_compat">Deny</directive>, et <directive |
| module="mod_access_compat">Satisfy</directive>.</p> |
| |
| <p>Dans la version 2.4, ce contrôle d'accès est assuré, comme tout |
| contrôle d'autorisation, via le nouveau module |
| <module>mod_authz_host</module>. Bien que le module |
| <module>mod_access_compat</module> soit fourni à des fins de |
| compatibilité avec les anciennes configurations, les anciennes |
| directives de contrôle d'accès devront être remplacées par les |
| nouveaux mécanismes d'authentification.</p> |
| |
| <p>Voici quelques exemples de contrôle d'accès avec l'ancienne et |
| la nouvelle méthode :</p> |
| |
| <p>Dans cet exemple, toutes les requêtes sont rejetées :</p> |
| <example> |
| <title>version 2.2 :</title> |
| Order deny,allow<br /> |
| Deny from all |
| </example> |
| <example> |
| <title>version 2.4 :</title> |
| Require all denied |
| </example> |
| |
| <p>Dans cet exemple, toutes les requêtes sont acceptées :</p> |
| <example> |
| <title>version 2.2 :</title> |
| Order allow,deny<br /> |
| Allow from all |
| </example> |
| <example> |
| <title>version 2.4 :</title> |
| Require all granted |
| </example> |
| |
| <p>Dans l'exemple suivant, tous les hôtes du domaine example.org |
| ont l'autorisation d'accès, tous les autres sont rejetés :</p> |
| |
| <example> |
| <title>version 2.2 :</title> |
| Order Deny,Allow<br /> |
| Deny from all<br /> |
| Allow from example.org |
| </example> |
| <example> |
| <title>version 2.4 :</title> |
| Require host example.org |
| </example> |
| </section> |
| |
| </section> |
| |
| <section id="config"> |
| <title>Autres changements dans la configuration</title> |
| |
| <p>D'autres ajustements mineurs peuvent s'avérer nécessaires pour |
| certaines configurations particulières, comme décrit ci-dessous.</p> |
| |
| <ul> |
| <li><directive>MaxRequestsPerChild</directive> a été renommée en |
| <directive module="mpm_common">MaxConnectionsPerChild</directive>; |
| ce nouveau nom reflète mieux l'usage de cette directive. |
| L'ancien nom est encore supporté.</li> |
| |
| <li>La directive <directive>MaxClients</directive> a |
| été renommée en <directive |
| module="mpm_common">MaxRequestWorkers</directive>; ce nouveau |
| nom reflète mieux l'usage de cette directive. Pour les |
| modules multiprocessus asynchrones, comme <module>event</module>, le nombre |
| maximal de clients n'est pas équivalent au nombre de threads du |
| worker. L'ancien nom est encore supporté.</li> |
| |
| <li>La directive <directive |
| module="core">DefaultType</directive> ne produit plus aucun |
| effet, si ce n'est d'émettre un avertissement si elle est |
| définie à une valeur autre que <code>none</code>. D'autres |
| directives de configuration la remplacent dans la version 2.4. |
| </li> |
| |
| <li>La valeur par défaut de la directive <directive |
| module="core">EnableSendfile</directive> est maintenant Off.</li> |
| |
| <li>La valeur par défaut de la directive <directive |
| module="core">FileETag</directive> est maintenant "MTime Size" |
| (sans INode).</li> |
| |
| <li><module>mod_log_config</module>: <a |
| href="modules/mod_log_config.html#formats">${cookie}C</a> |
| correspond au nom du cookie dans son ensemble, alors qu'avant, |
| toute sous-chaîne pouvait correspondre.</li> |
| |
| <li><module>mod_dav_fs</module>: le format du fichier <directive |
| module="mod_dav_fs">DavLockDB</directive> a changé pour les systèmes |
| avec inodes. L'ancien fichier <directive |
| module="mod_dav_fs">DavLockDB</directive> doit être supprimé dans le |
| cadre de la mise à jour. |
| </li> |
| |
| <li>La directive <directive module="core">KeepAlive</directive> |
| n'accepte que les valeurs <code>On</code> ou <code>Off</code>. |
| Avant, toute valeur autre que "Off" ou "0" était traitée comme |
| "On".</li> |
| |
| <li>Les directives AcceptMutex, LockFile, RewriteLock, SSLMutex, |
| SSLStaplingMutex et WatchdogMutexPath ont été remplacées par la |
| directive unique <directive module="core">Mutex</directive>. |
| Vous devez évaluer l'impact de ces directives obsolètes dans |
| votre configuration version 2.2 afin de déterminer si elles |
| peuvent être simplement supprimées, ou si elles doivent être |
| remplacées par la directive <directive |
| module="core">Mutex</directive>.</li> |
| |
| <li><module>mod_cache</module>: la directive <directive |
| module="mod_cache">CacheIgnoreURLSessionIdentifiers</directive> |
| effectue maintenant une correspondance exacte dans la chaîne de |
| paramètres au lieu d'une correspondance partielle. Si votre |
| configuration mettait en jeu des sous-chaînes comme |
| <code>sessionid</code> pour correspondre à |
| <code>/une-application/image.gif;jsessionid=123456789</code>, |
| vous devez maintenant utiliser la chaîne de correspondance |
| complète <code>jsessionid</code>. |
| </li> |
| |
| <li><module>mod_ldap</module>: la directive <directive |
| module="mod_ldap">LDAPTrustedClientCert</directive> s'utilise |
| maintenant exclusivement au sein d'une configuration de niveau |
| répertoire. Si vous utilisez cette directive, passez en revue |
| votre configuration pour vous assurer qu'elle est bien présente |
| dans tous les contextes de répertoire nécessaires.</li> |
| |
| <li><module>mod_filter</module>: la syntaxe de la directive |
| <directive module="mod_filter">FilterProvider</directive> utilise |
| maintenant une expression booléenne pour déterminer si un filtre |
| s'applique. |
| </li> |
| |
| <li><module>mod_include</module>: |
| <ul> |
| <li>L'élément <code>#if expr</code> utilise maintenant le |
| nouvel <a href="expr.html">interpréteur d'expressions</a>. |
| L'ancienne syntaxe peut être réactivée via la directive |
| <directive |
| module="mod_include">SSILegacyExprParser</directive>. |
| </li> |
| <li>Dans la portée du répertoire, une directive de |
| configuration SSI* ne provoque plus la réinitialisation à |
| leur valeur par défaut de toutes les directives SSI* de |
| niveau répertoire.</li> |
| </ul> |
| </li> |
| |
| <li><module>mod_charset_lite</module> : l'option |
| <code>DebugLevel</code> a été supprimée en faveur d'une |
| configuration de la directive <directive |
| module="core">LogLevel</directive> au niveau répertoire. |
| </li> |
| |
| <li><module>mod_ext-filter</module> : l'option |
| <code>DebugLevel</code> a été supprimée en faveur d'une |
| configuration de la directive <directive |
| module="core">LogLevel</directive> au niveau répertoire. |
| </li> |
| |
| <li><module>mod_ssl</module>: le contrôle de révocation des |
| certificats basé sur les CRL doit être maintenant explicitement |
| configuré via la directive <directive |
| module="mod_ssl">SSLCARevocationCheck</directive>. |
| </li> |
| |
| <li><module>mod_substitute</module>: la taille maximale d'une |
| ligne est maintenant 1Mo. |
| </li> |
| |
| <li><module>mod_reqtimeout</module>: si ce module est chargé, il |
| définit maintenant certains temps d'attente par défaut.</li> |
| |
| </ul> |
| </section> |
| </section> |
| |
| <section id="misc"> |
| <title>Changements divers</title> |
| |
| <ul> |
| <li><module>mod_auto_index</module>: extrait maintenant les titres |
| et affiche la description pour les fichiers .xhtml qui étaient |
| jusqu'alors ignorés.</li> |
| |
| <li><module>mod_ssl</module> : le format par défaut des variables |
| <code>*_DN</code> a changé. Il est cependant encore possible |
| d'utiliser l'ancien format via la nouvelle option |
| <code>LegacyDNStringFormat</code> de la directive <directive |
| module="mod_ssl">SSLOptions</directive>. Le protocole SSLv2 n'est |
| plus supporté.</li> |
| |
| <li><program>htpasswd</program> utilise maintenant par défaut les |
| condensés MD5 sur toutes les plates-formes.</li> |
| |
| <li>La directive <directive |
| module="core">NameVirtualHost</directive> n'a plus aucun effet, si |
| ce n'est l'émission d'un avertissement. Toute combinaison |
| adresse/port apparaissant dans plusieurs serveurs virtuels est |
| traitée implicitement comme un serveur virtuel basé sur le nom. |
| </li> |
| |
| <li><module>mod_deflate</module> n'effectue plus de compression |
| s'il s'aperçoit que la quantité de données ajoutée par la |
| compression est supérieure à la quantité de données à compresser. |
| </li> |
| |
| <li>Les pages d'erreur multilingues de la version 2.2.x ne |
| fonctionneront qu'après avoir été corrigées pour |
| respecter la nouvelle syntaxe de l'élément <code>#if expr=</code> |
| du module <module>mod_include</module>, ou si la directive |
| <directive module="mod_include">SSILegacyExprParser</directive> a |
| été activée pour le répertoire contenant les pages d'erreur. |
| </li> |
| </ul> |
| |
| </section> |
| |
| <section id="third-party"> |
| <title>Modules tiers</title> |
| |
| <p>Tous les modules tiers doivent être recompilés pour la |
| version 2.4 avant d'être chargés.</p> |
| |
| <p>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 <a |
| href="developer/new_api_2_4.html">Mise à jour de l'API</a>.</p> |
| </section> |
| <section id="commonproblems"> |
| <title>Problèmes de mise à jour courants</title> |
| <ul><li>Erreurs au démarrage : |
| <ul> |
| <li><code>Invalid command 'User', perhaps misspelled or defined by |
| a module not included in the server configuration</code> - chargez |
| le module <module>mod_unixd</module></li> |
| |
| <li><code>Invalid command 'Require', perhaps misspelled or defined |
| by a module not included in the server configuration</code>, ou |
| <code>Invalid command 'Order', perhaps misspelled or defined by a |
| module not included in the server configuration</code> - chargez |
| le module <module>mod_access_compat</module>, ou mettez à jour |
| vers la version 2.4 les directives d'autorisation.</li> |
| <li><code>mixing * ports and non-* ports with a NameVirtualHost address is not supported</code>, <code>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</code> - ces messages ne sont pas nouveaux, mais ils bloquent désormais le démarrage en générant une erreur</li> |
| |
| <li><code>_default_ is not allowed in NameVirtualHost directive</code> - ceci a toujours été le cas, mais à présent cette erreur bloque le démarrage du serveur.</li> |
| |
| <li><code>Ignoring deprecated use of DefaultType in line NN of |
| /path/to/httpd.conf</code> - supprimez la directive <directive |
| module="core">DefaultType</directive> et remplacez-la par les |
| directives de configuration appropriées.</li> |
| <li><code>mixing * ports and non-* ports with a NameVirtualHost |
| address is not supported</code>, <code>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</code> - |
| ce ne sont pas des nouveaux messages, mais ils empêchent |
| maintenant le serveur de démarrer</li> |
| <li><code>_default_ is not allowed in NameVirtualHost |
| directive</code> - l'explication est dans le message ; cette |
| définition n'a jamais été valide, mais elle empêche maintenant le |
| serveur de démarrer.</li> |
| </ul></li> |
| <li>Erreurs de traitement des requêtes : |
| <ul> |
| <li><code>configuration error: couldn't check user: /path</code> - |
| chargez le module <module>mod_authn_core</module>.</li> |
| </ul> |
| </li> |
| </ul> |
| |
| </section> |
| </manualpage> |