Annonce

Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

Gotcha
2010-05-30 08:30:16

Je viens de notifier P@t :-)
Merci.

rimousky
2010-05-29 23:44:35

Bonjour

Je reviens sur cette discussion et je viens de découvrir la source des difficultés d'upgrade  rencontrées sur le site SFR.

Il s'agit bien d'un problème d'hébergeur. En effet le fichier prep21up.php utilise la fonction php_uname() qui est interdite  par SFR pour des raisons de sécurité, ( voir la cf liste des fonction interdites par SFR.)

En fait la fonction php_uname() sert simplement à vérifier si le site hébergeur fonctionne sous système Windows et à adapter l'action du script en conséquence. 
(Equipe Piwigo est-ce que je me trompe ?)

Pour contourner cette difficulté, il suffit de remplacer dans le script PHP prep21up.php la séquence dans laquelle est appelée la fonction php_uname() par une séquence équivalente utilisant la variable PHP_OS.

Dans le fichier prep21upd, la séquence est mise en oeuvre dans la fonction 

Code:

function PclZipUtilTranslateWinPath($p_path, $p_remove_disk_letter=true)

Dans cette fonction : remplacer  la séquence suivante

Code:

if (stristr(php_uname(), 'windows'))

par celle-ci :

Code:

if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')

Et tout rentre dans l'ordre.
Il faut donc demander à l'équipe Piwigo de rectifier le script concerné (*).

Pour en savoir plus sur la fonction php_uname() voir par exemple :

manuelphp

(*) Je peux envoyer le fichier modifié si besoin est==> me contacter (cf adresse courriel ci-contre).
Le fichier prep21upd.php est assez touffu, mais avec un éditeur tel que Notepad++, on trouve facilement les lignes concernées (chercher/remplacer..)

Bon courage


PS liste complète de la fonction à remplacer


Code:

 function PclZipUtilTranslateWinPath($p_path, $p_remove_disk_letter=true) {

 if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
 if (($p_remove_disk_letter) && (($v_position = strpos($p_path, ':')) != false)) { $p_path = substr($p_path, $v_position+1); } if ((strpos($p_path, '\\') > 0) || (substr($p_path, 0,1) == '\\')) { $p_path = strtr($p_path, '\\', '/');
 } } 
 return $p_path; }
rimousky
2010-05-28 18:57:39

Dans la phase de réimport sur le serveur local, j'ai le message d'erreur suivant

MySQL a répondu:

#1062 - Duplicata du champ '1-57' pour la clef 'PRIMARY'
.

et seule une partie des tables est importée.

Explication ?

VDigital
2010-05-28 06:47:01

Admin > Configuration > ( Options | Générale ) > Onglet "Principale":
#   Verrouiller la galerie   

=> Seul le webmaster (ou admins) peuvent accéder encore à la galerie et un message les avertit de la situation en mode maintenance.

;-)

rimousky
2010-05-28 00:15:55

Bonjour sereng44

Merci pour ces explications.

Précision : que signifie 2 - verrouiller la galerie sur SFR  ?

sereng44
2010-05-22 00:50:57

Ouf  migration 2.0.9=> 2.1 terminée !!!

Pour contourner les restrictions de SFR j’ai suivi la procédure suivante :

1 – installer en local EasyPHP 5.3.2i
2 - verrouiller la galerie sur SFR
3 - exporter la base SFR et l’importer dans EasyPHP en local
4 - par FTP rapatrier toute l’arborescence piwigo de SFR vers EasyPHP local
5 – modifier en local le fichier include/mysql.inc.php pour qu’il pointe sur la base EasyPHP locale
6 - lancer l’Autoupgrade en local

A ce stade la migration est terminée sur la version locale. Maintenant il faut mettre à jour la version en ligne chez SFR. Avant de lancer la deuxième phase profiter qu’autoupgrade est disponible en local pour mettre à jour les plugins et les réactiver le cas échéant.

Attention avant de lancer les étapes suivantes s’assurer que tout fonctionne comme il faut en local (plugins, themes…) et que l’on a mis de côté une sauvegarde (fichiers +base)

7 - supprimer les tables piwigo de la base SFR
8 - supprimer tous les fichiers piwigo du site sfr sauf le répertoire galerie qui contient toutes les photos et qui n’a pas a priori évolué lors de la migration (volumineux)
9 - exporter la base EasyPHP et l’importer dans la base SFR
10 - par FTP rapatrier toute l’arborescence piwigo EASYPHP locale vers SFR
11 - modifier le fichier local/config/database.inc.php sur le serveur SFR pour qu’il pointe sur la base SFR

Et là normalement la migration est terminée. Pour moi tout fonctionne comme avant avec plein de fonctions en plus dans la partie administration... merci à vous

Et là bonne nuit…

rimousky
2010-05-21 23:49:32

Bonjour

Je tente la manoeuvre suivante :

1.<b> sauvegarde des 4 répertoires clés :</b>
- galleries
- upload
- plugins
- template-extension.

2. dump de la bd via phpmyadmin (éviter d'uliser le lien proposé par sfr dans l'interface de gestion des adresses, 9 fois sur 10 il y a erreur
uiliser un navigateur et atteindre la BD via http://sqladmin.sfr.fr

Pour cela aller dans la rubrique exporter sélectionner  toutes les tables et lancer l'export de toutes les tables dans un répertoire de l'ordinateur


3. Vider le répertoircontenant la V2.09

4. Supprimer la BD et en récrer une nouvelle (même nom, même extension des tables)


4. télécharger l'archive de la version 2.10 sans la dézipper (sfr s'en chargera)

5.Installer la version 2.1 en utilisant l'installeur de sfr (nt2ftp  :navigateur> http://ftpperso.sfr.fr >upload >sélectionner l'archive et lancer l'installation (bouton V vert à gauche)

5. réimporter la version précédente de la BD

6. réinstaller les 4 fichiers précédents

Pour l'instant j'ensuis à l'étape 1 (sauvegarde)

Je vais faire le test sur un site test.

Bonne nuit

Gotcha
2010-05-21 19:28:43

N'hésite pas à ouvrir ton propre sujet sur le forum. En effet, ce sujet étant marqué comme [Résolu], on ne traitera pas d'autres problèmes pour bien séparer les questions et les réponses pertinentes.

;-)

sereng44
2010-05-21 19:19:33

En effet cela me semble une bonne idée.

En fait j’avais commencé à essayé de faire ce genre de manip chez un autre hébergeur, pour info MultiMania, mais je suis confronté à d’autres problèmes techniques que je ne maitrise pas et liés cette fois à MultiMania. Donc l’idée de tout faire en local et donc finalement de maitriser tout les paramètres me plait bien. Je vais voir si je peux récupérer EasyPHP ou Wamp.


Merci pour vos réponses

Gotcha
2010-05-21 19:06:51

En le faisant sur un serveur local (EasyPHP, Wamp Serveur) et en transférant le résultat par FTP.
C'est mon idée. Attendez d'en avoir plusieurs, je ne suis pas un technicien ^^

sereng44
2010-05-21 18:58:13

Etant chez SFR l’Autoupgrade ne fonctionne pas. Je suis donc effectivement obligé de passer par la procédure manuelle.

Sauf erreur de ma part la procédure manuelle nécessite de lancer prep21up.php pour générer le fichier upgrade21.zip dans l’étape 3 ? non ? Et là re-problème avec SFR qui bloque php_uname() ... d'où ma question comment faire une migration manuelle sans utiliser prep21up.php ou sans utiliser php_uname() ?

Gotcha
2010-05-21 18:55:25

Eric a écrit:

[Erratum] prep21up.php n'est pas *que* pour la RC :-/ [/Erratum]

Je suis tombé dans le même piège aussi Eric.
On prend vite goût aux automatismes ^^

ddtddt
2010-05-21 18:53:32

Eric a écrit:

sereng44 a écrit:

Est-il possible de générer le répertoire local contenu dans upgrade21.zip, et  nécessaire à la migration (2.0.9 => 2.1), autrement qu’avec prep21up.php ?

prep21up.php n'était là *que* pour tester la migration en RC3. Pour un vrai mise à jour d'une galerie 2.0.x vers 2.1, il y a le plugin AutoUpgrade ou la mise à jour manuelle.

je t'invite à lire le Guide de Mise à jour manuelle
l'étape 3 ;-)

Eric
2010-05-21 18:50:05

sereng44 a écrit:

Est-il possible de générer le répertoire local contenu dans upgrade21.zip, et  nécessaire à la migration (2.0.9 => 2.1), autrement qu’avec prep21up.php ?

prep21up.php n'était là *que* pour tester la migration en RC3. Pour un vrai mise à jour d'une galerie 2.0.x vers 2.1, il y a le plugin AutoUpgrade ou la mise à jour manuelle.


[Erratum] prep21up.php n'est pas *que* pour la RC :-/ [/Erratum]

sereng44
2010-05-21 18:41:10

Bonjour,

Cela fait maintenant un peu plus de 5 mois que j’utilise ce bel outil piwigo et j’espère bien pouvoir continuer en utilisant ses nouvelles versions.

Voila j’ai le même problème à savoir que mon site est hébergé chez SFR et que je suis donc obligé de faire ma migration manuellement. Malheureusement comme indiqué dans l’un des messages précédents, la fonction php_uname() étant interdit chez SFR l’exécution du script prep21up.php plante et m’empêche donc de générer le fichier upgrade21.zip.

Est-il possible de générer le répertoire local contenu dans upgrade21.zip, et  nécessaire à la migration (2.0.9 => 2.1), autrement qu’avec prep21up.php ?

N’étant pas un pro du PHP, manuellement par exemple ?

D'avance merci pour votre aide.

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact