Table des matières
Upgrading from 4.5 to 4.6 / Mise à jour de 4.5 vers 4.6
Date de publication: le dimanche 20 novembre 2011 à 22h33
Dernière modification: par Pascal BOYER le mardi 13 décembre 2011 à 11h04
This section describes how to upgrade your existing eZ Publish 4.5 installation 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.5 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.5 to 4.6 consists of the following steps:
La procédure de mise à jour directe depuis une version 4.5 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
-
Upgrade the database to 4.6
Mettre à jour de la base de données vers la version 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
-
Additional upgrade step
Des étapes de mises à jour supplémentaires
-
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. eZ Publish 4.6 is compatible with PHP version 5.3 and above. For more information regarding system requirements check out http://ez.no/ezpublish/requirements
La plus petite version requise d'eZ Components avec eZ Publish 4.6 est ezcomponents-ezp46, version contenant un correctif. eZ Publish 4.6 est compatible avec les versions 5.3 et supérieures de PHP. Veuillez vous reporter au document
Prérequis 4.6
pour de plus amples informations sur les prérequis à une installation d'eZ Publish.
É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
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.
Les commandes ci-après définiront les permissions plus correctement mais requière en revanche des informations sur le serveur web en production.
chmod -R og+rwx design extension settings var
chown -R nouser:nouser design extension settings var
Étape 2: Upgrade custom extensions / Mettre à 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
For eZ OE 5.x and eZ JS Core you will need to replace the following rewrite rules when using Virtual Hosts:
Concernant eZ Online Editor 5.x 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
.
Note: Both admin2 design and webin (ezwebin extension) requires ezjscore extension to be enabled, look here for how to enabling extensions.
Note: L'interface admin2 et webin (l'extension ezwebin) nécessitent toutes deux l'extension ezjscore pour fonctionner. Consultez la page
Activer les extensions
pour de plus amples informations.
Étape 3: Upgrade the database / Mettre à jour 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 é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.6/dbupdate-4.5.0-to-4.6.0.sql
You can run this with the appropriate 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 4: 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 5: Run the system upgrade scripts / Exécuter les scripts de mise à jour du système
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 6: Additional upgrade steps / Étapes de mise à 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 7: 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 new eZ Publish directory.
Placez-vous à la racine du nouveau répertoire d'installation d'eZ Publish -
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 8: 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
Next, depending on your own extensions, follow the steps mentioned in the eZ Webin and eZ Flow upgrade documentation.
Ensuite, et en fonction des extensions que vous avez activées, suivez les étapes de la documentation de mise à jour d'
eZ Webin
et d'
eZ Flow
Commentaires














