Freelance Magento Toulouse – Entrepreneur
Dans: Magento
23 juil 2009Migrer un site Magento, tout comme n’importe quelle autre plateforme e-commerce ou CMS ne se fait pas en déplaçant simplement les fichiers et la base de données. Il faut changer certaines variables pour que votre serveur de production fonctionne aussi bien que votre serveur de développement.
Marche à suivre :
1) Sur le serveur de dev/demo :
2) Sur le serveur de démo/prod :
Problème : Magento Connect ne fonctionne plus : ERROR: failed to mkdir
Après la migration du serveur, il est arrivé d’avoir un message d’erreur lors de l’installation d’un nouveau module (Fontis WYSIWYG par exemple).
Pour régler le problème il faut supprimer (ou renommez-le si vous avez peur) le fichier : « /downloader/pearlib/pear.ini »
Vous pouvez maintenant revenir à la page d’accueil de votre Magento connect (http://monsite.com/downloader par exemple) et installer votre module.
Je m'appelle Frédéric Martinez.
Je suis Freelance Magento et anciennement étudiant en Master MIAGE à Toulouse.
Ce site présente mon CV ainsi que mes réalisations professionnelles, personnelles et universitaires.
20 Commentaires pour Migrer Magento sous un autre serveur
Erreurs rencontrées lors d’un transfert de Magento sur un serveur Privé - Frédéric Martinez
septembre 16th, 2009 à 22 h 18 min
[...] Tout ceci est décris dans un précédent article, comment transférer un site Magento sur un autre serveur. [...]
Jose
novembre 18th, 2009 à 19 h 14 min
bonjour, je voulais savoir si la procédure est la même pour changer le répertoire de magento: exemple
actuellement l’adresse de ma boutique est http://www.maboutique.com/shop et je voudrais la déplacer sur http://www.maboutique.com
merci
Frédéric Martinez
novembre 18th, 2009 à 19 h 25 min
Bonsoir,
Oui il suffit de modifier le {{base_url}} dans l’administration avant de déplacer les fichiers dans le dossier parent.
Ou bien déplacer les fichiers et après modifier la valeur base_url dans la base de données (table : core_config_data). (ne pas oublier le « / » à la fin de votre champ « value ».
Jose
novembre 20th, 2009 à 12 h 19 min
bonjour,
j’ai bien modifié la nouvelle adresse dans l’admin, donc quand je vais à l’adresse http://www.maboutique.com , pas de soucie. Par contre lorsque je clicke sur un produit ou autre je tombe sur une page « not found » idem lorsque je veux me connecter à l’admin. http://www.maboutique.com/admin
j’ai du raté un truc mais quoi?, merci pour votre aide.
PS: Pour info lorsque j’ai changer l’adresse dans l’admin et que j’ai validé, je suis tomber sur une page « not found »
Frédéric Martinez
novembre 20th, 2009 à 14 h 00 min
Tous vos produits et vos pages sont liés à cette « base URL ». Rafraichissez le cache (videz le dossier /var/cache) et cela devrait normalement remettre en place vos liens cassés.
Jose
novembre 20th, 2009 à 15 h 13 min
desolé si je polue, dans le répertoire /var , j’ai /var/cache (qui est vide maintenant de tous fichier et sous repertoire) j’ai /var/report (dans lequel il y a des fichier) j’ai /var/session ( qui est vide) et j’ai également dans le répertoir /var un fichier .htaccess
dois-je supprimer autre chose? car cela ne fonctionne toujours pas, merci
cyrille
janvier 30th, 2010 à 16 h 54 min
bonjour,
sujet très utile mais exactement le même problème pour moi que José.
Le magento en développement n’est pas à la racine du site mais dans un sous répertoire.
le problème 1 est résolu mais tout les liens donnent une erreur 404 (y compris admin) ou renvoient vers le serveur en prod.
une petite idée ? car j’ai tout essayé.
merci.
bruno
février 11th, 2010 à 14 h 27 min
Bonjour, je viens de migrer magento sur un autre serveur, j’ai donc effectué toutes les modifications ci-dessus, et cela c’est passer sans problèmes. L’admin est fonctionnel.
Par contre lorsque j’accede au front, celui-ci charge puis s’interompt, si je regarde le code source de la page il s’arrete a :
Cela vous est’il déjà arriver?
Merci
bruno
février 11th, 2010 à 14 h 29 min
le code html a eté squizer donc cela s’arrete a l’ouverture de la balise header ^^
tounet
septembre 13th, 2010 à 18 h 08 min
bonjour, super artcle qui ma bien aidé mais jai encore un probleme pour remettre les identifiant a 0 phpmyadmin me donne une erreur:
Erreur
requête SQL:
UPDATE core_store SET store_id =0 WHERE code = ‘admin’;
MySQL a répondu:
#1452 – Cannot add or update a child row: a foreign key constraint fails (`cfpsecurcfp/core_store`, CONSTRAINT `FK_STORE_WEBSITE` FOREIGN KEY (`website_id`) REFERENCES `core_website` (`website_id`) ON DELETE CASCADE ON UPDATE CASCADE)
pouvez vous m’aider ? merci
Frédéric Martinez
septembre 14th, 2010 à 12 h 38 min
Bonjour,
Il est préférable de ne plus exécuter cette requête (je vais la supprimer du post) car ce problème ne se pose plus à vrai dire.
Donc inutile d’exécuter cette requête. De plus, votre message d’erreur vous indique que la valeur est vérouillée (clef étrangère), donc impossible à mettre à jour .
Bauer
septembre 26th, 2010 à 0 h 37 min
Pour mon cas, je je souhaites dupliquer un site http://www.a.com en http://www.b.com dans 2 répertoires de mon serveur /home/a/www et /home/b/www. Tout se passe bien (tant au niveau de la base que du front que du back) Mon seul problème est au niveau de magento Connect où les extensions visibles depuis magento connect de b pointes toujours vers a (j’ai fait un test de désinstallation d’une extension peu sensible).
En cherchant un peu, il y a plusieurs fichiers .reg dans /home/b/www/downloader/pearlib/php/.registry qui contiennent en dur le chemin d’accès au répertoire du site a. J’ai essayé de les patcher à la main… plus rien de fonctionne dans magento connect.
Je ne peux malheureusement pas utliser la commande ./pear upgrade-all puisque je suis en 1.3.2.4 et souhaite y reste (pour le moment). Je veux justement dupliquer mon environnement de prod pour y tester la migration.
Merci de votre aide.
Frédéric Martinez
octobre 2nd, 2010 à 0 h 58 min
Bonjour Bauer,
Et en supprimant le fichier : /downloader/pearlib/pear.ini ?
Cela donne quoi ?
Frédéric Martinez
octobre 2nd, 2010 à 0 h 58 min
Bonjour Bauer,
Et en supprimant le fichier : /downloader/pearlib/pear.ini
Cela donne quoi ?
JP Bauer
octobre 2nd, 2010 à 18 h 40 min
La suppression de pear.ini permet simplement de pouvoir installer convenablement de nouveaux plugin, mais pas de mettre à jour ceux déjà installés.
J’ai trouvé un script qui patche les fichiers .reg des sous arborescences qui posent justement problème
http://diglin.com/diglin/fr/articles/magento.html chercher unserialize-pear-reg-files.php
kranich
décembre 17th, 2010 à 16 h 41 min
bonjour et merci, j’ai suivi votre tutoriel, mais impossible acceder au backoffice (admin)
j’ai une page erreur 404
Anselme
février 6th, 2011 à 19 h 05 min
Pour ceux qui aurait un probleme apres le transfert et qui voit leur page d accueil mais n arrivent pas a acceder a l admin et a leur lien.
Cela veut sansdoute dire que vous avez un probleme au niveau de l url rewriting.
Verifiez que votre .htacess soit bien present.
Cela m est arrive que en copiant les fichiers il ne copie pas le .htacess car sous linux un fichier avec un . est considere comme invisible (mais visible avec le ls -A)
Sinon verifier vos declaration de mod rewrite dans votre config apache et vos hotes virtuels.
Bon courage,
Anselme
romain
août 12th, 2011 à 11 h 13 min
Bonjour,
j’ai migré mon serveur de prod (systeme LAMP) sur mon serveur local (avec WAMP) avec votre methodologie.
ça marche bien, j’ai mon admin, mon front.
Le soucis c’est que ma balise head (pour les metadonnées) est completement vide pour toute les pages de mon site.
J’ai investigué et j’ai vu que le fichier page/html/head.phtml ne s’affiche pas dans mon 3columns.phtml (la ligne ?php echo $this->getChildHtml(‘head’) ?> sort rien).
Je ne comprend pas l’incidence avec ma migration.
voyez vous une explication ?
Je vous en remercie d’avance car j’avoue que je suis dans l’impasse.
Romain
steph
septembre 21st, 2011 à 21 h 16 min
Bonjour
J’ai une question : J’ai migré un site magento sur un nouveau serveur en prenant soin de bien garder les mêmes mots de passe et login ftp (pour les droits sur fichiers).
Aujourd’hui tout marche mais pas l’upload d’images pour illustrer mes fiches produits. Pourtant je pense avoir bien mis les droits d’écritures à 777 sur les dossiers.
Une idée???
Merci de votre aide.
Steph
Frédéric Martinez
janvier 5th, 2012 à 14 h 10 min
@JP Bauer : Merci pour l’astuce
@kranish : et avec /index.php/admin cela fonctionne ? Si oui, il vous faut activé l’URL Rewrite dans votre Apache. Sinon, ce n’est pas la bonne admin ou l’URL de base n’est pas bonne
@romain : aucune idée, surtout via une migration en fait, peut-être des URL écrites en dur quelque part ?
@steph : seul le dossier /media doit être en 777. Votre serveur accepte-t-il l’upload de fichier ? Votre image n’est-elle pas trop grosse ?