<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
<!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>Mise à jour de la version 2.2 vers la version 2.4 - Serveur Apache HTTP Version 2.4</title>
<link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
<script src="./style/scripts/prettify.min.js" type="text/javascript">
</script>

<link href="./images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p>
<p class="apache">Serveur Apache HTTP Version 2.4</p>
<img alt="" src="./images/feather.png" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.4</a></div><div id="page-content"><div id="preamble"><h1>Mise à jour de la version 2.2 vers la version 2.4</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="./en/upgrading.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="./fr/upgrading.html" title="Français">&nbsp;fr&nbsp;</a></p>
</div>

  <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 une
  méthode pour 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>

</div>
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#compile-time">Modifications des paramètres de compilation</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#run-time">Modifications de la configuration à l'exécution</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#misc">Changements divers</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#third-party">Modules tiers</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#commonproblems">Problèmes de mise à jour courants</a></li>
</ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="new_features_2_4.html">Vue d'ensemble des nouvelles
fonctionnalités du serveur HTTP Apache 2.4</a></li><li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="compile-time" id="compile-time">Modifications des paramètres de compilation</a></h2>
    
     <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
      <code class="module"><a href="./mod/mod_cache_disk.html">mod_cache_disk</a></code> 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
      <code class="module"><a href="./mod/mod_lbmethod_bybusyness.html">mod_lbmethod_bybusyness</a></code>. 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 <code class="directive">LoadModule</code>
      sont mises en commentaires dans le fichier de configuration.</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>

  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="run-time" id="run-time">Modifications de la configuration à l'exécution</a></h2>
    
<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>

    <h3><a name="authz" id="authz">Autorisation</a></h3>
      

      <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">Pour aller 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>

    <p>Les directives qui contrôlent la manière dont les modules
    d'autorisation réagissent lorsqu'ils ne reconnaissent pas
    l'utilisateur authentifié ont été supprimées : elles comprennent les
    directives AuthzLDAPAuthoritative, AuthzDBDAuthoritative,
    AuthzDBMAuthoritative, AuthzGroupFileAuthoritative,
    AuthzUserAuthoritative et AuthzOwnerAuthoritative. Ces directives
    ont été remplacées par les directives plus explicites <code class="directive"><a href="./mod/mod_authz_core.html#requireany">RequireAny</a></code>, <code class="directive"><a href="./mod/mod_authz_core.html#requirenone">RequireNone</a></code>, et <code class="directive"><a href="./mod/mod_authz_core.html#requireall">RequireAll</a></code>.</p>

    <p>Si vous utilisez <code class="module"><a href="./mod/mod_authz_dbm.html">mod_authz_dbm</a></code>, vous devez
    mettre à jour votre configuration en remplaçant les directives du
    style <code>Require group ...</code> par des directives du style
    <code>Require dbm-group ...</code>.</p>

    <h4><a name="access" id="access">Contrôle d'accès</a></h4>
      

      <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 <code class="directive"><a href="./mod/mod_access_compat.html#order">Order</a></code>, <code class="directive"><a href="./mod/mod_access_compat.html#allow">Allow</a></code>, <code class="directive"><a href="./mod/mod_access_compat.html#deny">Deny</a></code>, et <code class="directive"><a href="./mod/mod_access_compat.html#satisfy">Satisfy</a></code>.</p>

      <p>Dans la version 2.4, ce contrôle d'accès est assuré, comme tout
      contrôle d'autorisation, par le nouveau module
      <code class="module"><a href="./mod/mod_authz_host.html">mod_authz_host</a></code>. Bien que le module
      <code class="module"><a href="./mod/mod_access_compat.html">mod_access_compat</a></code> 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>

      <div class="note"><h3>Mélanger anciennes et nouvelles directives</h3>
      <p>Mélanger d'anciennes directives comme <code class="directive"><a href="./mod/mod_access_compat.html#order">Order</a></code>, <code class="directive"><a href="./mod/mod_access_compat.html#allow">Allow</a></code> ou <code class="directive"><a href="./mod/mod_access_compat.html#deny">Deny</a></code> avec des nouvelles comme
      <code class="directive"><a href="./mod/mod_authz_core.html#require">Require</a></code> est techniquement
      possible mais déconseillé. En effet, <code class="module"><a href="./mod/mod_access_compat.html">mod_access_compat</a></code> a
      été conçu pour supporter des configurations ne contenant que des anciennes
      directives afin de faciliter le passage à la version 2.4. Les
      exemples ci-dessous vous permettront de vous faire une meilleure idée des
      problèmes qui peuvent survenir.
      </p>
      </div>

      <p>Voici quelques exemples de contrôle d'accès avec l'ancienne et
      la nouvelle méthode :</p>

      <p>Dans cet exemple, il n'y a pas d'authentification et toutes les requêtes sont rejetées :</p>
      <div class="example"><h3>version 2.2 :</h3><pre class="prettyprint lang-config">Order deny,allow
Deny from all</pre>
</div>
      <div class="example"><h3>version 2.4 :</h3><pre class="prettyprint lang-config">Require all denied</pre>
</div>

      <p>Dans cet exemple, il n'y a pas d'authentification et toutes les requêtes sont acceptées :</p>
      <div class="example"><h3>version 2.2 :</h3><pre class="prettyprint lang-config">Order allow,deny
Allow from all</pre>
</div>
      <div class="example"><h3>version 2.4 :</h3><pre class="prettyprint lang-config">Require all granted</pre>
</div>

      <p>Dans l'exemple suivant, il n'y a pas d'authentification et tous les
      hôtes du domaine example.org ont l'autorisation d'accès, tous les autres
      étant rejetés :</p>

      <div class="example"><h3>version 2.2 :</h3><pre class="prettyprint lang-config">Order Deny,Allow
Deny from all
Allow from example.org</pre>
</div>
      <div class="example"><h3>version 2.4 :</h3><pre class="prettyprint lang-config">Require host example.org</pre>
</div>
    <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>

      <div class="example"><h3>version 2.2 :</h3><pre class="prettyprint lang-config">Order Deny,Allow
Deny from all
Allow from example.org</pre>
</div>
      <div class="example"><h3>version 2.4 :</h3><pre class="prettyprint lang-config">Require host example.org</pre>
</div>

      <p>Dans l'exemple suivant, le mélange d'anciennes et de nouvelles
      directives produit des résultats inattendus.</p>
 
      <div class="example"><h3>Mélange d'anciennes et de nouvelles directives : RESULTAT
	INATTENDU</h3><pre class="prettyprint lang-config">DocumentRoot "/var/www/html"

&lt;Directory "/"&gt;
    AllowOverride None
    Order deny,allow
    Deny from all
&lt;/Directory&gt;

&lt;Location "/server-status"&gt;
    SetHandler server-status
    Require local
&lt;/Location&gt;

access.log - GET /server-status 403 127.0.0.1
error.log - AH01797: client denied by server configuration: /var/www/html/server-status</pre>
</div>
      <p>Pourquoi httpd interdit l'accès à server-status alors que la
      configuration semble l'autoriser ? Parce que dans ce scénario de <a href="sections.html#merging">fusion</a> de configuration, les
      directives de <code class="module"><a href="./mod/mod_access_compat.html">mod_access_compat</a></code> sont prioritaires par
      rapport à celles de <code class="module"><a href="./mod/mod_authz_host.html">mod_authz_host</a></code>.</p>

      <p>L'exemple suivant quant à lui produit un résultat conforme :</p>

      <div class="example"><h3>Mélange d'anciennes et de nouvelles directives : RESULTAT
	CONFORME</h3><pre class="prettyprint lang-config">DocumentRoot "/var/www/html"

&lt;Directory "/"&gt;
    AllowOverride None
    Require all denied
&lt;/Directory&gt;

&lt;Location "/server-status"&gt;
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow From 127.0.0.1
&lt;/Location&gt;

access.log - GET /server-status 200 127.0.0.1</pre>
</div> 
      <p>En conclusion, même si une configuration hybride peut fonctionner,
      essayez de l'éviter lors de la mise à jour : soit conservez les anciennes
      directives, puis migrez-les vers les nouvelles ultérieurement, soit
      effectuez une migration immédiate de toutes les anciennes directives vers
      les nouvelles.  
      </p>      
    

    <p>Dans de nombreuses configurations avec authentification où la directive
     <code class="directive">Satisfy</code> était définie à sa valeur par défaut
     <em>ALL</em>, les lignes de configuration qui désactivent le contrôle
     d'accès basé sur l'hôte sont maintenant omises :</p>

      <div class="example"><h3>Version 2.2 :</h3><pre class="prettyprint lang-config"># configuration en version 2.2 qui désactive le contrôle d'accès basé sur le nom
# d'hôte pour n'utiliser que l'authentification
Order Deny,Allow
Allow from all
AuthType Basic
AuthBasicProvider file
AuthUserFile /example.com/conf/users.passwd
AuthName secure
Require valid-user</pre>
</div>
      <div class="example"><h3>Version 2.4 :</h3><pre class="prettyprint lang-config"># Pas besoin de remplacer les directives de contrôle d'accès basées sur le nom
# d'hôte désactivées
AuthType Basic
AuthBasicProvider file
AuthUserFile /example.com/conf/users.passwd
AuthName secure
Require valid-user</pre>
</div>

     <p>Dans les configurations où l'authentification et le contrôle d'accès se
     combinaient dans un but précis, les directives de contrôle d'accès doivent
     être migrées. Dans l'exemple suivant, les requêtes qui correspondent aux
     <em>deux</em> critères sont acceptées :</p>
      <div class="example"><h3>Version 2.2 :</h3><pre class="prettyprint lang-config">Order allow,deny
Deny from all
# ALL est la valeur par défaut de Satisfy
Satisfy ALL
Allow from 127.0.0.1
AuthType Basic
AuthBasicProvider file
AuthUserFile /example.com/conf/users.passwd
AuthName secure
Require valid-user</pre>
</div>
      <div class="example"><h3>Version 2.4 :</h3><pre class="prettyprint lang-config">AuthType Basic
AuthBasicProvider file
AuthUserFile /example.com/conf/users.passwd
AuthName secure
&lt;RequireAll&gt;
  Require valid-user
  Require ip 127.0.0.1
&lt;/RequireAll&gt;</pre>
</div>

     <p>Dans les configurations où l'authentification et le contrôle d'accès se
     combinaient dans un but précis, les directives de contrôle d'accès doivent
     être migrées. Dans l'exemple suivant, les requêtes qui correspondent à
     <em>au moins un</em> critère sont acceptées :</p>
      <div class="example"><h3>Version 2.2 :</h3><pre class="prettyprint lang-config">Order allow,deny
Deny from all
Satisfy any
Allow from 127.0.0.1
AuthType Basic
AuthBasicProvider file
AuthUserFile /example.com/conf/users.passwd
AuthName secure
Require valid-user</pre>
</div>
      <div class="example"><h3>Version 2.4 :</h3><pre class="prettyprint lang-config">AuthType Basic
AuthBasicProvider file
AuthUserFile /example.com/conf/users.passwd
AuthName secure
# Implicite : &lt;RequireAny&gt;
Require valid-user
Require ip 127.0.0.1</pre>
</div>

    
    
    <h3><a name="config" id="config">Autres changements dans la configuration</a></h3>
      

      <p>D'autres ajustements mineurs peuvent s'avérer nécessaires pour
      certaines configurations particulières, comme décrit ci-dessous.</p>

      <ul>
        <li>La directive <code class="directive">MaxRequestsPerChild</code> a été renommée en
	<code class="directive"><a href="./mod/mpm_common.html#maxconnectionsperchild">MaxConnectionsPerChild</a></code>;
	ce nouveau nom reflète mieux l'usage de cette directive.
	L'ancien nom est encore supporté.</li>

	<li>La directive <code class="directive">MaxClients</code> a
	été renommée en <code class="directive"><a href="./mod/mpm_common.html#maxrequestworkers">MaxRequestWorkers</a></code>; ce nouveau
	nom reflète mieux l'usage de cette directive. Pour les
	modules multiprocessus asynchrones, comme <code class="module"><a href="./mod/event.html">event</a></code>, 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 <code class="directive"><a href="./mod/core.html#defaulttype">DefaultType</a></code> 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 <code class="directive"><a href="./mod/core.html#allowoverride">AllowOverride</a></code> est maintenant
	<code>None</code>.</li>

	<li>La valeur par défaut de la directive <code class="directive"><a href="./mod/core.html#enablesendfile">EnableSendfile</a></code> est maintenant Off.</li>

	<li>La valeur par défaut de la directive <code class="directive"><a href="./mod/core.html#fileetag">FileETag</a></code> est maintenant "MTime Size"
	(sans INode).</li>

        <li><code class="module"><a href="./mod/mod_dav_fs.html">mod_dav_fs</a></code>: le format du fichier <code class="directive"><a href="./mod/mod_dav_fs.html#davlockdb">DavLockDB</a></code> a changé pour les systèmes
	avec inodes. L'ancien fichier <code class="directive"><a href="./mod/mod_dav_fs.html#davlockdb">DavLockDB</a></code> doit être supprimé dans le
	cadre de la mise à jour.
        </li>

        <li>La directive <code class="directive"><a href="./mod/core.html#keepalive">KeepAlive</a></code>
	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 <code class="directive"><a href="./mod/core.html#mutex">Mutex</a></code>.
	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 <code class="directive"><a href="./mod/core.html#mutex">Mutex</a></code>.</li>

        <li><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code>: la directive <code class="directive"><a href="./mod/mod_cache.html#cacheignoreurlsessionidentifiers">CacheIgnoreURLSessionIdentifiers</a></code>
	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><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code>: le second paramètre de la
	directive <code class="directive"><a href="./mod/mod_cache.html#cacheenable">CacheEnable</a></code>
	ne concerne les contenus en mandat direct que s'ils débutent par
	le protocole approprié. Dans les versions 2.2 et antérieures, un
	paramètre tel que '/' concernait tous les contenus.</li>

        <li><code class="module"><a href="./mod/mod_ldap.html">mod_ldap</a></code>: la directive <code class="directive"><a href="./mod/mod_ldap.html#ldaptrustedclientcert">LDAPTrustedClientCert</a></code> 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><code class="module"><a href="./mod/mod_filter.html">mod_filter</a></code>: la syntaxe de la directive
	<code class="directive"><a href="./mod/mod_filter.html#filterprovider">FilterProvider</a></code> utilise
	maintenant une expression booléenne pour déterminer si un filtre
	s'applique.
        </li>

	<li><code class="module"><a href="./mod/mod_include.html">mod_include</a></code>:
            <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
	    <code class="directive"><a href="./mod/mod_include.html#ssilegacyexprparser">SSILegacyExprParser</a></code>.
            </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><code class="module"><a href="./mod/mod_charset_lite.html">mod_charset_lite</a></code> : l'option
	<code>DebugLevel</code> a été supprimée en faveur d'une
	configuration de la directive <code class="directive"><a href="./mod/core.html#loglevel">LogLevel</a></code> au niveau répertoire.
        </li>

        <li><code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code> : l'option
	<code>DebugLevel</code> a été supprimée en faveur d'une
	configuration de la directive <code class="directive"><a href="./mod/core.html#loglevel">LogLevel</a></code> au niveau répertoire.
        </li>

	<li><code class="module"><a href="./mod/mod_proxy_scgi.html">mod_proxy_scgi</a></code>: certaines applications web
	ne fonctionneront plus correctement avec la nouvelle
	configuration de <code>PATH_INFO</code> qui est différente de
	celle de la version 2.2. La configuration
	précédente peut être
	restaurée en définissant la variable
	<code>proxy-scgi-pathinfo</code>.</li>

	<li><code class="module"><a href="./mod/mod_ssl.html">mod_ssl</a></code>: le contrôle de révocation des
	certificats basé sur les CRL doit être maintenant explicitement
	configuré via la directive <code class="directive"><a href="./mod/mod_ssl.html#sslcarevocationcheck">SSLCARevocationCheck</a></code>.
        </li>

        <li><code class="module"><a href="./mod/mod_substitute.html">mod_substitute</a></code>: la taille maximale d'une
	ligne est maintenant 1Mo.
        </li>

        <li><code class="module"><a href="./mod/mod_reqtimeout.html">mod_reqtimeout</a></code>: si ce module est chargé, il
	définit maintenant certains temps d'attente par défaut.</li>

	<li><code class="module"><a href="./mod/mod_dumpio.html">mod_dumpio</a></code>: la directive
	<code class="directive">DumpIOLogLevel</code> n'est plus supportée. Les
	données sont toujours enregistrées au niveau <code>trace7</code>
	de <code class="directive"><a href="./mod/core.html#loglevel">LogLevel</a></code></li>

        <li>Jusqu'à la version 2.2, sur les plateformes de style Unix, 
	les commandes de redirection des logs définies via <code class="directive"><a href="./mod/core.html#errorlog">ErrorLog</a></code> ou <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> étaient invoquées
	en utilisant <code>/bin/sh -c</code>. A
	partir de la version 2.4, les commandes de redirection des logs
	sont exécutées directement. Pour retrouver l'ancien
	comportement, voir la <a href="logs.html#piped">documentation
	sur la redirection des logs</a></li>

    </ul>
    
  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="misc" id="misc">Changements divers</a></h2>
    

    <ul>
      <li><code class="module"><a href="./mod/mod_auto_index.html">mod_auto_index</a></code>: extrait maintenant les titres
      et affiche la description pour les fichiers .xhtml qui étaient
      jusqu'alors ignorés.</li>

      <li><code class="module"><a href="./mod/mod_ssl.html">mod_ssl</a></code> : 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 <code class="directive"><a href="./mod/mod_ssl.html#ssloptions">SSLOptions</a></code>. Le protocole SSLv2 n'est
      plus supporté. Les directives <code class="directive"><a href="./mod/mod_ssl.html#sslproxycheckpeercn">SSLProxyCheckPeerCN</a></code> et
      <code class="directive"><a href="./mod/mod_ssl.html#sslproxycheckpeerexpire">SSLProxyCheckPeerExpire</a></code>
      sont maintenant définies par défaut à On, et les requêtes mandatées
      vers des serveurs HTTPS possèdant des certificats non conformes ou
      périmés échoueront donc avec un code d'erreur 502 (Bad gateway).</li>

      <li><code class="program"><a href="./programs/htpasswd.html">htpasswd</a></code> utilise maintenant par défaut les
      condensés MD5 sur toutes les plates-formes.</li>

      <li>La directive <code class="directive"><a href="./mod/core.html#namevirtualhost">NameVirtualHost</a></code> 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><code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code> 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 <code class="module"><a href="./mod/mod_include.html">mod_include</a></code>, ou si la directive
      <code class="directive"><a href="./mod/mod_include.html#ssilegacyexprparser">SSILegacyExprParser</a></code> a
      été activée pour le répertoire contenant les pages d'erreur.
      </li>

      <li>La fonctionnalité fournie par <code>mod_authn_alias</code>
      dans les précédentes versions (en fait la directive
      <code class="directive"><a href="./mod/mod_authn_core.html#authnprovideralias">AuthnProviderAlias</a></code>)
      est maintenant fournie par <code class="module"><a href="./mod/mod_authn_core.html">mod_authn_core</a></code>.  
      </li>

      <li>Les directives RewriteLog et RewriteLogLevel ont été
      supprimées. Leur fonctions sont maintenant assurées par la
      directive <code class="directive"><a href="./mod/core.html#loglevel">LogLevel</a></code> qui permet de définir
      un niveau de journalisation approprié pour le module
      <code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code>. Voir aussi la section <a href="mod/mod_rewrite.html#logging">journalisation de
      mod_rewrite</a>.</li>

    </ul>

    </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="third-party" id="third-party">Modules tiers</a></h2>
    

	<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écessiteront cependant des modifications ; se
    reporter à la vue d'ensemble <a href="developer/new_api_2_4.html">Mise à jour de l'API</a>.</p>
  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="commonproblems" id="commonproblems">Problèmes de mise à jour courants</a></h2>
    
    <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 <code class="module"><a href="./mod/mod_unixd.html">mod_unixd</a></code></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 <code class="module"><a href="./mod/mod_access_compat.html">mod_access_compat</a></code>, ou mettez à jour
      vers la version 2.4 les directives d'autorisation.</li>

      <li><code>Ignoring deprecated use of DefaultType in line NN of
      /path/to/httpd.conf</code> - supprimez la directive <code class="directive"><a href="./mod/core.html#defaulttype">DefaultType</a></code> et remplacez-la par les
      directives de configuration appropriées.</li>

      <li><code>Invalid command 'AddOutputFilterByType', perhaps misspelled 
      or defined by a module not included in the server configuration
      </code> - la directive <code class="directive"><a href="./mod/mod_filter.html#addoutputfilterbytype">AddOutputFilterByType</a></code> qui était
      jusqu'alors implémentée par le module core, l'est maintenant par
      le module mod_filter, qui doit donc être chargé.</li>

    </ul></li>
    <li>Erreurs de traitement des requêtes :
    <ul>
      <li><code>configuration error:  couldn't check user: /path</code> -
      chargez le module <code class="module"><a href="./mod/mod_authn_core.html">mod_authn_core</a></code>.</li>
      <li>Les fichiers <code>.htaccess</code> ne sont pas traités -
      Vérifiez la présence d'une directive <code class="directive"><a href="./mod/core.html#allowoverride">AllowOverride</a></code> appropriée ; sa valeur par
      défaut est maintenant <code>None</code>.</li>
    </ul>
    </li>
</ul>

  </div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="./en/upgrading.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="./fr/upgrading.html" title="Français">&nbsp;fr&nbsp;</a></p>
</div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/upgrading.html';
(function(w, d) {
    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
        d.write('<div id="comments_thread"><\/div>');
        var s = d.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
    }
    else { 
        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
    }
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2018 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
    prettyPrint();
}
//--><!]]></script>
</body></html>