29-11-2011 : Remettre dans le débat politique les principes du Conseil National de la Résistance
17-02-2012 : Pétition pour une protection de l’apiculture et des consommateurs face au lobby des OGM
Logo de mon site
Logo de mon site
Faire un don




Right menu

Logo du site ez.no  Logo XHTML 1.O du W3C  Logo XHTML 1.O du W3C  Site francophone officiel de Firefox
zero papier grâce aux catalogues et promos en ligne de bonial

eZ Publish : Mise à jour de 4.1.x vers 4.2

Date de publication: le mardi 31 août 2010 à 23h48
Dernière modification: par Pascal BOYER le jeudi 23 septembre 2010 à 22h38
« Article précédent: eZ Publish : généralités sur la procédure de mise à jour

 04/02/2010 3:45

Upgrading from 4.1.x to 4.2.y / Mise à jour de 4.1.x vers 4.2.y

This section describes how to upgrade your existing eZ Publish 4.1.x installation to version 4.2. If you are upgrading from version earlier than 4.0.3, you first need to upgrade to 4.0.3 before you can upgrade to 4.2 (Refer to either "Upgrading from 3.10.x to 4.0.y" or "Upgrading from 4.0.x to 4.0.y" depending on which version you are currently running.)
Cet article détaille la procédure de mise à jour de votre installation eZ Publish 4.1.x vers une version 4.2.y. Si vous procédez à la mise à jour d'une version antérieure à la version 4.0.3, vous devez alors préalablement réaliser une mise à jour vers la version 4.0.3 avant de poursuivre par une mise à jour vers la version 4.2 (Reportez-vous aux articles Mise à jour de 3.10.x vers 4.0.y  ou Mise à jour de 4.0.x vers 4.0.y  en fonction de votre version actuellement en production).

The upgrade procedure described below is generic and does not cover any specific cases (for example, running eZ Publish in a clustered environment).
La procédure de mise à jour décrite ci-dessous étant générique, elle ne couvre aucun cas spécifique (comme par exemple une installation eZ Publish s'exécutant dans un environnement clusterisé).

Make sure that you have a working backup of the site before you do the actual upgrade.
Avant de commencer votre mise à jour, assurez-vous d'être en possession d'une sauvegarde  fonctionnelle de votre site.

Important upgrade notes: / Notes de mise à jours importantes:

You need to run updateimagesystem.php before the dbupdate scripts, otherwise the tables being upgraded will be removed.
Vous devez exécuter le script updateimagesystem.php préalablement aux scripts dbuptade (de mise à jour de la base de données) afin d'éviter que les tables mises à jour ne soient supprimées.

The procedure for upgrading directly from version 4.1.x to 4.2 consists of the following steps:
La procédure de mise à jour directe d'une version 4.1.x vers une version 4.2 se compose des étapes suivantes:

  1. Upgrading the distribution files to 4.2
    Mise à jour des fichiers de votre installation vers ceux de la version 4.2
  2. Upgrading custom extensions
    Mise à jour des extensions personnalisées
  3. Updating image system
    Mise à jour des images du système
  4. Upgrading the database to 4.2
    Mise à jour de la base de données vers la version 4.2
  5. Regenerate the autoload array for extensions
    Regénération du tableau d'autochargement des extensions
  6. Running the system upgrade scripts for versions from 4.0.x to 4.2
    Exécution des scripts de mise à jour du système de la version 4.0.x vers la version 4.2
  7. Clearing the caches
    Vider les caches

Check for requirements / Contrôler les prérequis

The eZ Components 2009.1 requirements / Prérequis eZ Components 2009.1

With eZ Publish 4.2, eZ Components 2009.1 is the minimum version required. If you installed a previous version with PEAR, please upgrade to version 2009.1. For more information also see http://ezcomponents.org/docs/install 
eZ Components 2009.1 constitue la version minimale requise pour eZ Publish 4.2. Si vous en aviez installé une version antérieure par le biais de PEAR vous devez procéder à sa mise à jour vers la version 2009.1. Pour de plus amples informations reportez-vous au document d' installation de eZ Components

The PHP requirements / Prérequis PHP

Although a PHP version 5.2.x is listed as required (with the exception of PHP 5.2.9 which has a serious regression in the array_unique() call), full PHP version 5.3 compatibility is also provided.
Bien qu'il soit indiqué qu'une version 5.2.x de PHP est requise (à l'exception de la version 5.2.9 recelant une sérieuse régression dans l'appel array_unique), la pleine compatibilité avec la version 5.3 de PHP est également fournie.

For more information regarding system requirements check out http://ez.no/ezpublish/requirements
Pour de plus amples informations sur les prérequis du système, reportez-vous au document http://ez.no/ezpublish/requirements

Step 1: Upgrading the distribution files / Etape 1: Mise à jour des fichiers de la distribution

The easiest way to upgrade the distribution files is to unpack eZ Publish 4.2 to a separate directory and then copy the directories that contain site-specific files from the existing installation. Make sure that you copy the following directories:
Le moyen le plus simple de mettre à jour les fichiers de la distribution consiste à extraire le contenu de l'archive eZ Publish 4.2 dans un répertoire dédié puis d'y copier également les répertoires contenant les fichiers spécifiques à votre installation en production. Assurez-vous de bien copier les répertoires suivants:

  • design/example 
  • design/example_admin 
  • var
  • settings/siteaccess
  • settings/override

Replace "example" and "example_admin" with the actual names of your siteaccesses.
Remplacez example et example_admin par les vrais noms de vos siteaccess.

Step 2: Custom extensions / Etapes 2: Extensions personnalisées

If you are using custom extensions, the subdirectories inside the "extension" directory will also have to be copied. However, make sure that you do not overwrite any extensions that come with eZ Publish, which currently are eZ Online Editor (5.0.4) and eZ OpenOffice.org (2.4.0). Note that upgrading the distribution files will overwrite the autoload arrays for extensions. You will need to re-generate the autoload arrays for active extensions later.
Si vous utilisez des extensions personnalisées, les sous-répertoires du répertoire extension/ doivent également être copiés. Assurez-vous cependant de ne remplacer aucune des extensions proposées par défaut par eZ Publish, à savoir: eZ Online Editor (5.0.4) et eZ OpenOffice.org (2.4.0). Retenez que la mise à jour des fichiers de la distribution vont remplaçer les tableaux d'autochargement des extensions; vous devrez donc regénérer ultérieurement les tableaux pour les extensions activées.

See below for dedicated upgrade instructions for eZ Flow and eZ Webin.
Voir ci-dessous les instructions de mise à jour spécifiques à eZ Flow et eZ Webin.

Note that ezdhtml is now replaced by ezoe, so you should not copy it over.
Retenez que ezdhtml étant à présent remplacée par ezoe, vous ne devez pas le mettre à jour.

For eZ OE 5.x you will need to have the following rewrite rule if using Virtual Hosts:
Si vous êtes en mode VirtualHost, vous devrez, pour eZ OE 5.x, créer les règles de réécriture suivantes:

RewriteRule ^/var/[^/]+/cache/public/.* - [L]

For more detailed instructions, see the dedicated doc page: http://ez.no/doc/extensions/online_editor/5_x/installation
Pour de plus amples informations, reportez-vous à la documentation spécifique suivante: http://ez.no/doc/extensions/online_editor/5_x/installation

The updated versions of eZ Flow and eZ Website Interface will also install the following extensions:
Les versions mises à jour de eZ Fow et eZ Website Interface installeront également les extensions suivantes:

  • eZ Website Toolbar (separated from eZ Web site / séparée de eZ Web site)
  • eZ JS Core (base library for client side Javascript and Ajax functions / librairie de base des fonctions Javascript et Ajax côté client)
  • eZ Star Rating 
  • eZ Google Maps Location

Step 3: updateimagesystem.php / Etape 3: updateimagesystem.php

This script is necessary to run if you have data of the 'ezimage' datatype, dating from before eZ Publish 3.3, in version 3.3 a new image system took over based on ezimagealiashandler.
Il est nécessaire d'exécuter ce script si vous disposez de données émanant du datatype ezimage datant d'une version de eZ Publish antérieure à la version 3.3. A partir de cette dernière version, un nouveau système d'image a pris place basé sur le gestionnaire ezimagealiashandler.

If you are upgrading to the 4.2 series of eZ Publish for the first time, and the installation at hand has been running since prior to eZ Publish 3.3 then you need to run the updateimagesystem.php script before running any of the dbupdate scripts for version 4.2.
Si vous effectuez pour la première fois une mise à jour vers une version de la série 4.2 de eZ Publish et que votre installation en production est antérieure à la version 3.3 alors vous devez exécuter le script updateimagesystem.php préalablement à tout script de mise à jour de la base de données (dbupdate) de la version 4.2.

If the installation at hand is a new installation or based on any eZ Publish version since 3.3 then you can skip running the updateimagesystem.php script.
Si votre installation en production est récente ou basée sur toute version de eZ Publish postérieure à la version 3.3, il n'est alors pas nécessaire d'exécuter le script updateimagesystem.php.

Step 4: Upgrading the database / Etape 4: Mise à jour de la base de données

The update script for the database is located in
Le script de mise à jour de la base de données est situé dans:

<eZP root>/update/database/<mysql|postgresql>/4.2/dbupdate-4.1.0-to-4.2.0.sql

You can run this with the appropriate command line tool or application
Vous pouvez exécuter ce script par le biais d'une ligne de commande ou d'une application appropriée.

Step 5: Regenerate the autoload array for extensions / Etape 5: Regénérer le tableau d'autochargement des extensions

The autoload system also has some changes, for example the autoload array for extensions is now placed in var/autoload of your eZ Publish installation (along the class changes in extensions itself).
Le système d'autochargement fait également l'objet de quelques modifications comme par exemple le nouvel emplacement du tableau d'autochargement des extensions situé à présent dans le répertoire /var/autoload/ de votre installation eZ Publish (de même que les modifications des classes dans les extensions elles-mêmes).

To regenerate the autoload array, execute the following script from
Afin de regénérer le tableau d'autochargement, exécutez le script via la commande suivante:

php bin/php/ezpgenerateautoloads.php --extension

Step 6: Running the system upgrade scripts / Etape 6: Exécuter les scripts de mise à jour du système

Run the following two upgrade scripts:
Exécutez les deux scripts de mise à jour suivants:

The update script in <root of ez publish installation>/update/common/scripts/4.1 is:
Le script de mise à jour situé dans <racine de l'installation de ez publish>/update/common/script/4.1 est:

  • correctxmlalign.php: after upgrading to 4.1 the default alignment for embedded images in ezxmltext datatype is removed, this script will allow you to have the correct xmlalignment.
    correctxmlalign.php: après mise à jour vers une version 4.1, l'alignement par défaut des images intégrées dans un datatype ezxmltext est supprimé. Ce script vous permettra de conserver l'alignement correct.

The update script in <root of ez publish installation>/update/common/scripts/4.2 is:
Le script de mise à jour situé dans <racine de l'installation de ez publish>/update/common/script/4.2 est:

  • fixorphanimages.php: this script will delete images from the storage directory that are no longer connected to any content object attribute 
    fixorphanimages.php: ce script effacera toutes les images du répertoire de stockage pour lesquelles n'existe plus aucun attribut d'objet qui y serait lié.

Step 7: Clearing the caches / Etape 7: Effacer les caches

Whenever an eZ Publish solution is upgraded, all caches must be cleared in a proper way. This should be done from within a system shell:
Chaque fois qu'une installation eZ Publish est mise à jour, tous les caches doivent être correctement effacés. Ceci peut s'effectuer depuis une commande shell:

  1. Navigate into the eZ Publish 4.2 directory.
    Placez-vous à la racine du répertoire d'installation de eZ Publish 4.2
  2. Run the script using the following shell command: 
    Exécutez le script par le biais de la commande suivante:

 php bin/php/ezcache.php --clear-all --purge

Purging ensures that the caches are physically removed. When the "--purge" parameter is not specified, the caches will be expired but not removed.
Cette purge des caches vous assure qu'ils seront physiquement supprimés. Lorsque le paramètre –purge n'est pas spécifié, les caches expireront sans être pour autant supprimés.

Sometimes the script is unable to clear all cache files because of restrictive file/directory permission settings. Make sure that all cache files have been cleared by inspecting the contents of the various cache subdirectories within the "var" directory (typically the "var/cache/" and "var/<name_of_siteaccess>/cache/" directories). If there are any cache files left, you need to remove them manually.
Il arrive parfois que le script ne soit pas en mesure de supprimer tous les caches en raison de permissions restrictives appliquées à certains répertoires et/ou fichiers. Assurez-vous donc que tous les fichiers cachés (mis en cache) ont bien été supprimés en inspectant le contenu des différents sous-répertoires de cache placés sous le répertoire /var (typiquement les répertoires /var/cache/ et /var/<nom du siteaccess>/cache/). S'il reste des fichiers, supprimez-les manuellement.

Upgrading eZ Flow and/or Website Interface separately / Mettre à jour séparément eZ Flow et/ou Website Interface

Step 1: Backup / Etape 1: Sauvegarde

Before you will start the Website Interface or eZ Flow upgrading process make sure that you have a backup of the existing website state including database, extensions, INI settings, etc. During the upgrade process existing eZ Flow and eZ Webin extensions will be removed and replaced with a new version. Website Interface and eZ Flow default content classes will be replaced as well. Upgrade script will also change some of the existing INI settings and add new ones which are required by latest version.
Avant de démarrer la procédure de mise à jour de Website Interface ou de eZ Flow, assurez-vous d'être en possession d'une sauvegarde de votre site en production ainsi que de la base de données, des extensions, des fichiers de configurations INI, etc. Au cours de la procédure de mise à jour, les extensions existantes eZ Flow et de eZ Webin seront supprimées puis remplacées par les nouvelles versions. Les classes de contenu par défaut de eZ Website Interface et de eZ Flow seront également remplacées. Le script de mise jour modifiera aussi quelques fichiers de paramétrage INI et en ajoutera quelques autres requis par la dernière version.

Step 2: eZ Flow upgrade / Etape 2: Mise à jour de eZ Flow

For information regarding upgrading to eZ Flow 2.0 please visit the following extension upgrading page.
A propos de la mise à jour de eZ Flow 2.0, visitez la page suivante: mise à jour d'extension .

To get more information about available upgrade options, execute ezflowupgrade.php script with –help parameter:
Afin d'obtenir plus d'informations sur les options de mise à jour disponibles, exécutez le script ezflowupgrade.php suivi du paramétre –help:

php bin/php/ezflowupgrade.php --help

Step 3: Re-write rules / Etape 3: Règles de réécriture

Users running their eZ Flow sites in VH mode should update their extension related re-write rules to the following:
Les utilisateurs faisant tourner leur site eZ Flow en mode VirtualHost devraient mettre à jour les règles de réécritures associées de la manière suivante:

Rewriterule ^/extension/[^/]+/design/[^/]+/(stylesheets|flash|images|lib|javascripts?)/.* - [L]

Step 4: Website Interface upgrade / Etape 4: Mise à jour de eZ Website Interface

For more information regarding upgrading to eZ Webin 1.5 please visit the following extension upgrading page.
A propos de la mise à jour de eZ Webin 1.5, visitez la page suivante: extension upgrading page .

To get more information about available upgrade options, execute ezwebinupgrade.php script with –help parameter:
Afin d'obtenir plus d'informations sur les options de mise à jour disponibles, exécutez le script ezwebinupgrade.php suivi du paramétre –help:

php bin/php/ezwebinupgrade.php --help

Step 5: Regenerate the autoload array for extensions / Etape 5: Regénérer le tableau d'autochargement des extensions

The autoload system also has some changes, for example the autoload array for extensions is now placed in var/autoload of your eZ Publish installation (along the class changes in extensions itself).
Le système d'autochargement fait également l'objet de quelques modifications comme par exemple le nouvel emplacement du tableau d'autochargement maintenant placé dans le répertoire /var/autoload/ de votre installation eZ Publish (de même que les modifications des classes dans les extensions elles-mêmes).

To regenerate the autoload array, execute the following script from:
Afin de regénérer le tableau d'autochargement, exécutez le script suivant:

php bin/php/ezpgenerateautoloads.php --extension

Step 6: Cache / Etape 6: Cache

Once the upgrade script is done, you need to clear the cache by executing following command from eZ Publish root folder:
Une fois le script de mise à jour exécuté, vous devez supprimer les caches par le biais de l'exécution de la commande suivante à partir du répertoire racine de l'installation de eZ Publish:

php bin/php/ezcache.php --clear-all --purge

Commentaires