Table des matières
Direct upgrading from 4.4 to 4.6 / Mise à jour directe de 4.4 vers 4.6
Date de publication: le dimanche 20 novembre 2011 à 22h33
Dernière modification: par Pascal BOYER le mardi 13 décembre 2011 à 11h32
This section describes how to upgrade your existing eZ Publish 4.4 installation directly to version 4.6. Make sure that you have a working backup of the site before you do the actual upgrade, and make sure the installation you are performing the upgrade on is offline.
Cet article détaille la procédure de mise à jour de votre installation eZ Publish 4.4 directement vers la version 4.6. Assurez-vous tout d'abord d'être en possession d'une sauvegarde fonctionnelle de votre site avant de procéder à sa mise à jour et assurez-vous également de mettre ce dernier hors ligne le temps de la procédure.
Important upgrade notes / Notes importantes de mise à jour
The procedure for upgrading directly from version 4.4 to 4.6 consists of the following steps:
La procédure de mise à jour directe depuis une version 4.4 vers une version 4.6 se déroule selon les étapes suivantes:
-
Upgrade the distribution files to 4.6
Mettre à jour des fichiers de l'installation vers leur version 4.6
-
Upgrade custom extensions
Mettre à jour des extensions personnalisées- 4.4 vers 4.5
- 4.5 vers 4.6
-
Upgrade the database to 4.6
Mettre à jour de la base de données vers la version 4.6- 4.4 vers 4.5
- 4.5 vers 4.6
-
Regenerate the autoload array for extensions
Régénérer le tableau d'autochargement pour les extensions
-
Run the system upgrade scripts for 4.6
Exécuter les scripts de mise à jour du système vers la version 4.6- 4.4 vers 4.5
- 4.5 vers 4.6
-
Additional upgrade step
Des étapes de mises à jour supplémentaires
-
Enable ezjscore
Activer ezjscore
-
Enable admin2-design for back-end
Activer l'interface admin2-design pour le back-end (Ndt: interface d'administration)
-
Clear the caches
Vider les caches
-
Upgrade extensions
Mettre à jours les extensions
Check for requirements / Contrôle des prérequis
The eZ Components and PHP requirements / Prérequis eZ Components et PHP
The minimum version required of eZ Components with eZ Publish 4.6 is "ezcomponents-ezp46", containing a fix to the package. This version is bundled in eZ Publish 4.6 Enterprise. eZ Publish 4.6 is compatible with PHP version 5.2.1 and above, but certified on RHEL 6 and Debian 6, PHP 5.3.x distros. See http://ez.no/ezpublish/requirements for more info.
La plus petite version requise d'eZ Components avec eZ Publish 4.6 est ezcomponents-ezp46, version contenant un correctif. Cette version est intégrée à eZ Publish 4.6 Enterprise qui est compatible avec la versions 5.2.1 et supérieures de PHP mais certifiée pour les distributions RHEL 6 et Debian 6 utilisant PHP 5.3.x. Veuillez vous reporter au document
Prérequis 4.6
pour de plus amples informations.
Étape 1: Upgrade the distribution files / Mettre à jour les fichiers de la distribution
The easiest way to upgrade the distribution files is to unpack eZ Publish 4.6 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 d'eZ Publish 4.6 dans un répertoire dédié puis d'y copier également les répertoires contenant des fichiers spécifiques à l'ancienne version (Ndt: ancienne version = version de production mise à jour). Assurez-vous en particulier de copier les répertoires suivants:
- design/example
- design/example_admin
- var
- settings/siteaccess
- settings/override
- (index_cluster.php)
Cluster note: If you are using cluster mode its necessary to copy index_cluster.php from the old version.Note concernant le mode cluster:
Si vous travaillez dans un tel environnement, il est nécessaire de copier le fichier index_cluster.php appartenant à la version mise à jour.
Replace "example" and "example_admin" with the actual names of your site accesses.
Remplacez example et example_admin par les vrais noms des siteaccess de votre site.
Important note: Because the new directory has replaced the original directory, the directory permissions need to be fixed. Use the following commands to do this.
Note importante: Dans la mesure où les nouveaux répertoires remplacent les anciens, les droits associés à ceux-ci doivent être adaptés/modifiés. Utilisez pour cela la commande suivante:
(You have the choice between Shell commands or Alternative shell commands):
(Vous avez le choix entre les Commandes shell et les Commandes alternatives):
- Shell commands / Les commandes shell
These shell commands will give proper permission to the web server:
Les deux commandes ci-dessous modifieront correctement les permissions associées au serveur web:
cd </chemin/vers/votre/répertoire/eZ/Publish>
chmod -R a+rwx design extension settings var
- Alternative shell commands / Commandes alternatives
These commands will setup the permission more correctly, but require knowledge about the running web server (change 'nouser' to http server user).
Les commandes ci-après définiront les permissions plus correctement mais requière en revanche des informations sur le serveur web en production (remplacez nouser par le nom de l'utilisateur associé au serveur web)
cd </chemin/vers/votre/répertoire/eZ/Publish>
chmod -R og+rwx design extension settings var
chown -R nouser:nouser design extension settings var
Étape 2: Upgrade custom extensions / Metre à jour les extensions personnalisées
If you are using custom extensions, the sub-directories inside the "extension" directory will also have to be copied. However, make sure that you do not overwrite any extensions that are included in eZ Publish, which currently are eZ Flow (2.x), eZ Online Editor (5.x), eZ OpenOffice Document format (2.x), eZ JSCore (1.x), eZ Image Editor (1.x), eZ Comments (1.x), eZ Multiupload (1.x), eZ MB Password Expiry (1.x), eZ Network (1.x), eZ REST API Provider (1.x), eZ Script Monitor (1.x), eZ SI, eZ Find (2.x). 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és, les sous-répertoires du répertoire extension devront être également copiés. Cependant, assurez-vous de n'effacer (surcharger) aucune des extensions incluses par défaut dans eZ Publish, à savoir eZ Flow (2.x), eZ Online Editor (5.x), eZ OpenOffice Document format (2.x), eZ JSCore (1.x), eZ Image Editor (1.x), eZ Comments (1.x), eZ Multiupload (1.x), eZ MB Password Expiry (1.x), eZ Network (1.x), eZ REST API Provider (1.x), eZ Script Monitor (1.x), eZ SI, eZ Find (2.x). Retenez que la mise à jour des fichiers de la distribution remplacera les tableaux d'autochargement des extensions. Vous devrez donc regénérer ces tableaux pour activer ces extensions.
See the dedicated upgrade instructions for eZ Flow and Website Interface below.
Reportez-vous aux instructions ci-après dédiées à la mise à jour des extensions eZ Flow et Website Interface.
The updated versions of eZ Flow and Website Interface will also install the following extensions:
Les versions mises à jour d'eZ Flow et de Website Interface installeront également les extensions suivantes:
- eZ Website Toolbar
- eZ Star Rating
- eZ Google Maps Location
Note: For eZ Online Editor 5.x and eZ JS Core you will need to replace the following rewrite rules when using Virtual Hosts:
Note: Concernant eZ Online Editor et eZ JS Core, vous devrez remplacer les règles de surcharge suivantes en cas d'utilisation d'une configuration de type Virtuel Hosts:
RewriteRule ^/var/cache/texttoimage/.* - [L] RewriteRule ^/var/[^/]+/cache/(texttoimage|public)/.* - [L]
with:par:
RewriteRule ^/var/([^/]+/)?cache/(texttoimage|public)/.* - [L]
For more detailed instructions, see the dedicated eZ OE and eZ JS Core doc pages.
Pour des instructions plus détaillées veuillez consulter les pages de documentation dédiées à
eZ OE
et
eZ JS Core
.
Étape 3: updateimagesystem.php / Le script updateimagesystem.php
If the installation is a new installation or based on any eZ Publish version since 3.3 then you can skip running the "updateimagesystem.php" script. If not, then execute it using:
En revanche, si la mise à jour s'applique à une version récente ou postérieure à eZ Publish 3.3 alors vous pouvez ignorer l'exécution du script updateimagesystem.php. Dans le cas contraire, exécutez-le ainsi:
php update/common/scripts/4.1/updateimagesystem.php -s $SITE_ACCESS
Étape 4: Upgrade the database / Mettre à jour la base de données
The update script for the database is located in the following locations, skip the ones that don't apply to the version your upgrading from:
Le script de mise à jour de la base de données étant situé dans l'un des emplacements ci-dessous, ignorez ceux ne concernant pas la version que vous mettez à jour:
<eZ Publish root>/update/database/<mysql|postgresql>/4.5/dbupdate-4.4.0-to-4.5.0.sql
<eZ Publish root>/update/database/<mysql|postgresql>/4.6/dbupdate-4.5.0-to-4.6.0.sql
You can run these with the appropriate sql command line tool or application.
Vous pouvez appliquer ces scripts soit en ligne de commande soit par le biais d'une application.
MySQL
The "ezmysql" database driver has been deprecated in 4.5 and it is recommended to use the "ezmysqli" driver instead. This requires that the "mysqli" extension in PHP is enabled and can be archived by changing the driver in your override or siteaccesses "site.ini.append.php" settings to:
Le pilote de base de données ezmysql étant déprécié par la version 4.5, il est recommandé de le remplacer par le pilote ezmysqli. Ceci nécessite que l'extension PHP mysqli soit activée et puisse être archivée en modifiant le nom du pilote dans les paramètres de votre fichier site.ini.append.php (ou de l'une de ses surcharges):
[DatabaseSettings] DatabaseImplementation=ezmysqli
Cluster
The "Mysql DB/DFS Cluster" database back-end has not yet been deprecated, but it is recommended to use the same driver as the main database driver, so change your "file.ini.append.php" settings in override or siteaccesses to use" eZDFSFileHandlerMySQLiBackend" for DFS Cluster or "eZDBFileHandlerMysqliBackend" for DB Cluster.
Bien que back-end de base de données Mysql DB/DFS Cluster ne soit pas encore été déprécié, il est cependant recommandé d'utiliser le même pilote en tant que pilote de base de données principal. Partant, veuillez modifier les paramètres du fichier file.ini.append.php de vos siteaccess (ou du répertoire de surcharges générale) afin d'utiliser eZDFSFileHandlerMySQLiBackend pour DFS Cluster ou eZDBFileHandlerMysqliBackend pour DB Cluster.
Note: The "index_cluster.php" file should be updated to
Note: Le fichier index_cluster.php doit également être modifié:
define( 'STORAGE_BACKEND', 'dfsmysqli' ;)
If you use DB cluster, remove "dfs" from the string.
Si vous utilisez DB Cluster, supprimez dfs dans la chaîne de caractère ci-dessus.
Étape 5: Regenerate the autoload array for extensions / Régé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 a également fait l'objet de quelques modifications. Par exemple, le tableau d'autochargement des extensions est à présent placé dans le répertoire var/autoload de votre installation eZ Publish (comme les modifications de classes dans les extensions elles-même).
To regenerate the autoload array, execute the following script from the root of your eZ Publish directory:
Pour régénérer le tableau d'autochargement, exécutez le script suivant à partir du répertoire racine de votre installation eZ Publish:
php bin/php/ezpgenerateautoloads.php --extension
Étape 6: Run the system upgrade scripts / Exécuter les scripts de mise à jour du système
4.4 vers 4.5
For eZ Publish 4.4 which was upgraded from 4.3, run the following command from the root of your eZ Publish directory:
Pour les versions eZ Publish 4.4 mises à jour à partir d'une version 4.3, exécutez la commande suivante à partir du répertoire racine de votre installation eZ Publish:
php update/common/scripts/4.5/updatesectionidentifier.php -s $SITE_ACCESS
Note: Skip this step if this your 4.4 installation is not an upgrade from 4.3. If you are uncertain, please run the script.Note:
Ignorez cette étape si votre installation 4.4 n'est pas une mise à jour d'une version 4.3. Dans le doute, exécutez le script.
4.5 vers 4.6
There are two system upgrade scripts that can be run for the eZ Publish 4.6 upgrade, "removetrashedimages.php" and "updateordernumber.php".
Deux scripts de mise à jour du système peuvent être exécutés dans le cadre d'une mise à jour vers eZ Publish 4.6: removetrashedimages.php et updateordernumber.php.
Script 1: If you want to ensure no trashed images remains on your setup because of image aliases not being restored when restoring object from trash (issue #017781), you do the following:
Script 1: Si vous souhaitez supprimer les images restées dans la corbeille à cause d'alias d'images non restaurés lors de la restauration des objets depuis la corbeille (bug #017781), procédez comme suit:
-
make sure that no items remains in trash for any users (images from objects in trash would be impossible to restore not doing so)
assurez-vous qu'il ne reste aucun objet dans la corbeille de quelques utilisateurs que ce soit (les images liées à des objets dans la corbeille seront impossible à restaurer sans cela) -
run the following cleanup script by executing this command:
exécutez le script de nettoyage suivant grâce à cette commande:
php update/common/scripts/4.6/removetrashedimages.php
Note: It is safe to skip this test, this is only to free extra space.
Note: Il est plus sûr d'ignorer ce test uniquement destiné uniquement à libérer un peu plus d'espace disque.
Script 2: You need to run an upgrade script to update webshop order numbers issue (#018233) by running:
Script 2: Vous devez exécuter ce script afin de résoudre le problème des numéros d'ordre d'achat (bug #018233):
php update/common/scripts/4.6/updateordernumber.php
Note: If you don’t have webshop or you don’t have orders (table "ezorder") in your eZ Publish, you don’t have to run this script.
Note: Dans la mesure où vous ne disposez pas de boutique en ligne ou d'ordres d'achat (table ezorder) dans votre installation eZ Publish, vous pouvez ignorer l'exécution de ce script.
Étape 7: Additional upgrade steps / Mises à jour supplémentaires
Update "override.ini.append.php" / Mettre à jour le fichier override.ini.append.php
Content panes are not visible on the "User accounts" tab in the back-end. To fix it on an already-installed eZPublish, remove the following rules from your "override.ini.append.php" for your admin siteaccess:
Les panneaux (???) de contenu ne sont pas visibles dans l'onglet Comptes utilisateurs de l'interface d'administration. Pour corriger cela sur une installation existante, supprimez les règles suivantes du fichier override.ini.append.php de votre siteaccess d'administration:
[window_controls] Source=window_controls.tpl MatchFile=window_controls_user.tpl Subdir=templates Match[navigation_part_identifier]=ezusernavigationpart [windows] Source=windows.tpl MatchFile=windows_user.tpl Subdir=templates Match[navigation_part_identifier]=ezusernavigationpart
... and clear the cache after removing. See separate step below.
...puis supprimez les caches (reportez-vous à l'étape 8 ci-dessous).
Étape 8: Enable ezjscore / Activer ezjscore
Both the "admin2" design, "ezoe", "ezwebin", "ezflow" and several other extensions requires the ezjscore extension to be enabled, this is archived by editing your "settings/override/site.ini.append.php" settings file to make sure it looks like this:
Le design admin2 et les extensions ezoe, ezwebin, ezflow et bien d'autres, requièrent l'activation de l'extension ezjscore. Assurez-vous donc que votre fichier settings/override/site.ini.append.php ressemble à ceci:
[ExtensionSettings] ActiveExtensions[] ActiveExtensions[]=ezjscore
Étape 9: Enable admin2 design for back-end / Activer le design admin2 de l"interface d'administration
To enable admin2 open "site.ini" for your admin site access. For an eZ Flow site this would for instance be:
Pour activer admin2, éditez le fichier site.ini de votre siteaccess d'administration. Dans le cas d'un site eZ Flow, ce fichier serait:
settings/siteaccess/ezflow_site_admin/site.ini.append.php
In this file include "AdditionalSiteDesignList[]=admin2" to your [DesignSettings]. It is important that you add the admin2 design before the admin design, in order to let extensions that have admin templates to continue to work. On an eZ Flow site, it would mean changing the settings from:
Ajoutez dans ce fichier et à la section [DesignSettings] le tableau AdditionalSiteDesignList[]=admin2. Il est important que vous placiez le design admin2 avant le design admin afin que les extensions disposant de templates d'administration continuent à fonctionner. Sur un site eZ Flow, cela consiste à modifier:
[DesignSettings] SiteDesign=ezflow_site_admin AdditionalSite DesignList[]=admin AdditionalSite DesignList[]=ezflow
to
en
[DesignSettings] SiteDesign=ezflow_site_admin AdditionalSiteDesignList[]=admin2 AdditionalSiteDesignList[]=admin AdditionalSiteDesignList[]=ezflow
When using a plain or eZ Webin install you should make the same changes. In this case you will of course have a different SiteDesign setting and no AdditionalSiteDesignList[]=ezflow line.
Lorsque vous utilisez un site eZ Webin ou de type Plain vous devez apporter les mêmes modifications. Mais le cas échéant, la valeur du paramètre SiteDesign sera différente et la ligne AdditionalSiteDesignList[]=ezflow n'existera pas.
To enable users to change their Administration Interface preferences (Location and Re-Edit editing preferences), add the following line to the [Toolbar_admin_right] block in settings/siteaccess/<siteaccess_name>/toolbar.ini.append.php:
Pour autoriser les utilisateurs à modifier leurs préférences de l'Interface d'administration (préférences d'édition Emplacement et Retour à l'édition), ajoutez la ligne ci-dessous à la section [Toolbar_admin_right] du fichier settings/siteaccess/<siteaccess_name>/toolbar.ini.append.php:
Tool[]=admin_preferences
So the block will then look like like this:
La section ressemblera alors à ceci:
[Toolbar_admin_right] Tool[] Tool[]=admin_current_user Tool[]=admin_bookmarks Tool[]=admin_preferences
Étape 10: Clear the caches / Vider 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 solution eZ Publish est mise à jour, tous les caches doivent être correctement vidés. Cette opération peut être réalisée en ligne de commande:
-
Navigate into the eZ Publish 4.5 directory.
Placez-vous à la racine du répertoire d'installation d'eZ Publish 4.6 -
Run the script using the following shell command:
Exécutez le script avec 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.
La purge des caches permet de s'assurer qu'ils soient physiquement supprimés. Si le paramètre --purge est omis alors les caches expireront mais ne sont pas 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 sub-directories 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 soit incapable de supprimer tous les fichiers mis en cache en raison de permissions restrictives sur les répertoires et fichiers. Assurez-vous donc que tous les caches aient bien été supprimés en inspectant le contenu des différents sous-répertoires du répertoire var/ (typiquement les répertoires var/cache/ et var/<nom_du_siteaccess>/cache/). S'il reste le moindre fichier, supprimez-le à la main.
Étape 11: Upgrade extensions / Mettre à jour les extensions
When using eZ Webin and eZ Flow, these extension will also need to be updated.
Si vous utilisez eZ Webin et eZ Flow, ces extensions doivent également être mises à jour.
The first thing to do is to change the extensions permissions. An example on how this is done:
La première chose à faire consiste à modifier les permissions des extensions. Voici un exemple de commande pour réaliser ceci:
chmod -R a+rwx extension
4.4 vers 4.5:
eZ Webin 1.7 to 1.8ou eZ Flow 2.2 to 2.3
4.5 vers 4.6:
eZ Webin 1.8 to 1.9ou eZ Flow 2.3 to 2.4
Table des matières
Commentaires














