Transfert de boutique Prestashop

Prestashop 1.7 – Transfert local vers votre serveur (ép.22)

Comment transférer sa boutique en ligne vers un hébergement en ligne ? Vous avez travaillé sous Wamp et vous désirez réaliser le transfert comme un pro ? Je vous explique comment procéder pas à pas.

Publier Prestashop vers Infomaniak

Il y’a des opérations que je fais de manière mécanique et parfois je pense que tout le monde à l’habitude de le faire, pourtant régulièrement j’ai eu des demandes concernant le transfert d’un Prestashop local vers un hébergement en ligne, cela me semble donc important de vous l’expliquer.

Pourquoi travailler en local ? Tout simplement, parce qu’on peut aller plus vite pour effectuer des modifications… on a accès à tous les fichiers plus rapidement et c’est plus confortable que de travailler directement en mode en ligne.

Actuellement je n’avais pas encore fait de transfert de Prestashop 1.7 local, vers un hébergement online… le principe reste le même que Prestashop 1.6, si ce n’est l’emplacement du fichier de configuration qui change.

Concernant le SSL j’ai pris la décision de ne pas l’aborder durant ce tutoriel, car je préfère aborder cette problématique séparément lors d’un prochain tutoriel. N’oubliez pas que le SSL est devenu un standard, pensez donc à équiper votre boutique avec le HTTP / SSL.

Les étapes pour transférer son Prestashop

  • Le but de l’opération est simple, mettre en route votre boutique Prestashop sur un vrai serveur, ici j’ai acheté un hébergement directement chez Infomaniak.
  • Nous allons ensuite transférer tous les fichier de votre boutique, via Filezilla sur le serveur distant.
  • La base de données locale, sera exportée… puis réimportée chez Infomaniak. Pensez à remplacer vos liens en mode « http://localhost » par « http://votresite », si vous avez créé des liens manuels.
  • Ensuite on procède à la configuration du fichier « /web/app/config/parameters.php » pour actualiser les coordonnées de connexion à la base de données.
  • Il ne reste plus qu’à se connecter au back-office Prestashop, pour ensuite actualiser le .htaccess, le robots.txt et mettre l’url canonique en mode 301.
  • On vérifie que les mails fonctionnent… et qu’on arrive bien à ajouter des images aux produits (en cas de problème vérifier les CHMOD).

39 commentaires sur “Prestashop 1.7 – Transfert local vers votre serveur (ép.22)”

  1. Merci pour ce tuto…
    par contre je rencontre un soucis…. j’ai voulu tester la nouvelle boutique fraîchement paramétrée mais avec un seul produit pour tester… résultat… page blanche disant que mon url est trop redirigée, donc site inaccessible (la boutique a été mise non pas à la racine mais dans un dossier), j’ai essayé de me connecter au back office via son lien (www.monsite.fr/dossier/mon admin), et là j’ai eu accès à la connexion, mais sur une page blanche minimaliste sans template… je me logue, impec, pas de soucis, mais que sa soit au moment de me loguer ou après, toujours pas de Template…. petit tour sur le lien « thème », je valide le « classic » pensant que mon thème fraîchement acheté chez Prestashop n’aurai pas été validé lors de l’export de ma boutique, et toujours pareil, je revalide le nouveau thème, et rien ne change…

    Alors ou ai-je fait une erreur?
    Ma boutique communique bien avec la BDD vu que je peux me loguer… Je suis chez OVH est ce leur hébergement? (a savoir la boutique initiale tourne très bien à la racine…).
    voici le message de Chrome quand j’essaie d’accéder à la boutique de test en ligne (www.monsite.fr/boutique/):

    Cette page ne fonctionne pas

    http://www.monsite.fr vous a redirigé à de trop nombreuses reprises.
    Essayez de supprimer les cookies..
    ERR_TOO_MANY_REDIRECTS

    De bons conseils me seraient vraiment profitables…..

    Merci en tout cas!

    1. Bonjour,

      Difficile de répondre à ce cas précisément, il serait bien de faire une recherche dans PHPmyAdmin, pour vérifier s’il y’a encore des mentions « localhost » ou « 127.0.0.1 » qui n’auraient pas été remplacées.

      Il faut regarder aussi dans la table « ps_shop_url » pour voir si les chemins semblent logiques et aussi retirer le « .htaccess » à la racine de votre shop (ou l’ajuster, car il peut y avoir des chemins incorrects).

      A bientôt !

    1. Bonjour,

      Difficile de répondre à cette question… il va falloir contrôler les liens, les emplacements des images… contrôler si l’url-rewriting est activé, désactiver tous les caches de Prestashop.

      A bientôt !

  2. Bonjour,
    J’ai installé Prestashop 1.7.2.2 sur un serveur vps infogéré d’Infomaniak, mais j’ai 2 messages lors de la vérification système :

    Install and/or enable a PHP accelerator (highly recommended)
    et
    Set short_open_tag to off in php.ini

    Avez-vous rencontré des bugs lors de la migration sur leur serveur ou avez-vous corrigé les 2 points ?

    Merci

    1. Hello,

      En principe il s’agit de 2 warnings qui n’empêchent pas l’installation de Prestashop (chez Infomaniak). Actuellement en standard je fais le déploiement de Prestashop en laissant ces deux messages activés.

      A bientôt !

    2. Bonjour Stéphane,
      je suis intéressé par ton expérience car depuis que j’ai migré PS en 1.7.2.2 (1500 articles actifs) j’ai de gros soucis de lenteur : je suis actuellement chez OVH (offre Perf2) et me demande si je ne devrai pas changer chez Infomaniak : peux -tu me dire ce que tu en penses ? quelle offre as-tu pris ? etc…
      merci

      1. Bonjour,

        La puissance du serveur joue un rôle, mais aussi la mise en cache du site. Chez Infomaniak il faut idéalement prendre un serveur CLOUD pour de bonnes performances.

        A bientôt !

  3. Bonjour
    merci pour ce tuto vraiment bien expliqué
    mais je n’arrive pas à me connecter au back office via l’admin
    il ne reconnais pas mes accès
    une idée ? please

    1. Bonjour,

      A essayer de supprimer le .htaccess à la racine de votre hébergement, peut-être que les chemins dans ce fichier sont incorrects.

      A bientôt !

  4. bonjour,

    svp je ne sais quoi penser mais voilà ma racine:

    admin0545pf0zx docs INSTALL.txt robots.txt
    app download js src
    bin error500.html LICENSES themes
    cache images.inc.php localization tools
    classes img mails translations
    composer.lock index.php modules upload
    config init.php override vendor
    controllers Install_PrestaShop.html pdf webservice

    où est situé le fichier htaccess ?

  5. Bonjour ,
    Déja merci pour vos vidéo elles sont génial et elles m’aident vraiment beaucoup, Alors j’ai transférer mon prestashop 1.7.0.5 vers mon serveur lws et ça marche bien mais il y a un problème quand j’essaye d’accéder aux modules installer et au produits dans le backoffice il m’affiche une http erreur 505 .

    1. Bonjour,

      Il faut essayer de retirer le .htaccess à la racine et activer le mode debug de Prestashop. A voir aussi dans la table « ps_shop_url » de la base de données si les chemins sont corrects.

      A bientôt !

      1. merci pour votre réponse j’ai tous fait comme vous l’avez dit et tout est ok a part les module installer ça s’affiche pas ça me met erreur 505. Je pense que c’est une erreur d’url mais j’arrive pas a trouver ou est l’erreur.

        1. Je tenais a vous dire que c’est bon le problème est résolue j’ai télécharger le fichier cacert.pem et je l’ai mis dans app/cache/prod et le problème est résolue. Merci

  6. Bonjour,

    J’essaie de faire l’inverse : récupérer un site distant sur mon pc en local.
    J’ai donc récupéré le répertoire du site ainsi que la base de données.
    J’ai la page de connexion au back office mais il ne reconnaît pas mes identifiants de connexion… comment faire pour accéder de nouveau au back office ?

    1. Bonjour,

      Essayez de supprimer le fichier .htaccess à la racine du shop et ajustez les valeurs dans la table « ps_shop_url » de votre base de données. J’essaierai de faire un tutoriel à ce sujet dans le sens inverse.

      A bientôt !

  7. Bonjour,
    Je ne sais pas si quelqu’un peut m’aider, j’ai transféré mon site sur un serveur Gandi, et tout fonctionne excepté quelques partie du bach office qui affiche des paes blanches ( modules, paramètres avancer ).
    Et quand je passe en mode debug là par contre tout fonctionne mais si il y a des décalage d’affichage.
    Savez-vous d’oú peut venir le soucis ?
    Merci !

    1. Bonjour,

      Peut-être qu’il faudrait laisser le debug désactivé et voir dans les logs du serveur de l’hébergement s’il y’a des messages qui sont remontés (ex. erreurs fatales de PHP).

      A bientôt !

  8. Super tuto Merci,
    J’ai un soucis par contre que se soit en ligne ou en local , lorsque j’active le mode debug tout est nickel par exemple mon top-menu :
    ma barre de navigation est comme ça :
    – acceuil ,news,top50,t-shirts homme, t-shirt femme,sweat etc…
    Mais au moment ou j’enlève le mode debug mon menu navigation devient comme ça :
    – acceuil,news,top50,t-shirts(avec les sub categories t-shirts femme, t-shirt homme) ,sweat etc…
    Quand je vais dans module il y a marqué qu’il n’y a aucun module d’installer et impossible d’en installer d’autre et en ligne tout les liens sont pointés vers localhost (mode debug OFF ,alors qu’en debug ON les liens sont bien redirigés ).
    Si quelqu’un peut m’aider 🙂
    Cordialement

  9. Et si on a commencé à développer sa boutique prestashop en local (création de fiche produit, quantité de stock, etc, à ce moment là on a une base de donnée déjà établi. J’ai aucune idée de ce a quoi m’attendre pour l’importation de ma base de donnée. Qu’est ce que ça va faire comme problème pour importer cette base de donnée ? Moi le nom d’hôte de ma base c’est « % » est ce que ça va être compatible avec un serveur ovh par exemple ?

    1. Bonjour,

      Concernant les identifiants pour se connecter à la base, il est toujours possible de les ajuster au travers du fichier de configuration de Prestashop. Par contre si vous avez une base local et une base de production online, il ne sera pas possible de fusionner les 2 bases avec le différentiel qui a eu lieu entre temps.

      A bientôt !

  10. Salut Webaxx,

    Merci tout d’abord pour tes supers vidéos, super travail!

    J’ai un soucis après avoir uploadé mon site sur kreativmedia. Problème de login sur le Back Office (pas de messages d’erreur avec mdp juste et mdp tapé faux). Je me retrouve avec la même page avec le logo prestashop mais sans les FORM et aucun message d’erreur. En rechargeant le lien et en supprimant tout ce qui se trouve après index.php cela fonctionne et je me trouve bien dans le Back Office.
    Tout fonctionne correctement en local avec XAMPP les caches sont tous désactivés, le mode debug est bien activé et je suis en navigation privée.

    Prestashop 1.7.4.4

    Merci pour ton aide

    Samuel

    1. Bonjour,

      Bonne question, les facteurs peuvent être multiples… à essayer de retirer le « .htaccess » à la racine du shop et vérifier aussi dans la table ps_shop_url les valeurs de (domain/domain_ssl/physical_uri).

      A bientôt !

  11. Bonjour, j’ai mis mon site, developpé en localhost, sur un hebergement ovh, ma boutique est en production sur un autre serveur et j’ai pas modifier les DNS sous ovh en attendant de faire fonctionner la nouvelle version de mon site qui sera chez ovh. J’ai bien tout fait comme dans votre tutoriel mais au moment fatidique de rafraichir la page web j’ai une erreur 500 (j’ai caché le nom d’utilisateur de la bdd et l’ip):

    [PrestaShopException]
    Link to database cannot be established: SQLSTATE[HY000] [1045] Access denied for user 'xxxxxxxxxx'@'11.11.11.11' (using password: YES) 
    at line 127 in file classes/db/DbPDO.php
    
    125.             $this->link = $this->getPDO($this->server, $this->user, $this->password, $this->database, 5);
    126.         } catch (PDOException $e) {
    127.             throw new PrestaShopException('Link to database cannot be established: ' . $e->getMessage());
    128.         }
    
    DbPDOCore->connect - [line 330 - classes/db/Db.php]
    DbCore->__construct - [line 241 - classes/db/Db.php] - [4 Arguments]
    DbCore::getInstance - [line 48 - config/alias.php]
    pSQL - [line 340 - classes/shop/Shop.php] - [1 Arguments]
    ShopCore::initialize - [line 119 - config/config.inc.php]
    require - [line 27 - index.php] - [1 Arguments]
    

    j’ai essayé de supp le .htaccess pour voir le nouveau type d’erreur mais rien ne change, je pense que le .htaccess n y est pour rien ? J’ai bien observé votre vidéo, les noms de bdd et d’utilisateur et le mdp sont ceux qui ont servi à créer la base sur le serveur, donc pareil j’ai réutilisé moi aussi ceux qui m’ont servi à créer la base, j’ai bien tout fait comme dans votre tutoriel mais ça marche pas. Auriez vous une idée de ce qui ne va pas ?
    Merci d’avance.
    Cordialement.

    1. Bonjour,

      De ce que je vois c’est vraiment un problème de l’accès à la base de données donc le nom d’utilisateur, le nom du serveur ou le mot de passe est incorrect… A vérifier aussi que l’utilisateur MySQL a bien accès à la base de donnés en question (à contrôler ça chez l’hébergeur).

      A bientôt !

      1. Oui effectivement y’avais des majuscule dans le prefix de ma base en localhost sous windows et c’était en minuscule sur serveur, et en plus je m’étais trompé de mot de passe lol..

  12. Bonjour Germain,
    comme toujours vos tutos sont a la hauteurs.
    Permettez^moi de vous poser une bête question. Peut-on faire cette procedure
    dans l’autre sens. En effet j’ai travaille dans ma boutique directement chez l’hébergeur et maintenant je voudrais faire une copie en local.

    1. Bonjour,

      Oui tout à fait vous pouvez faire pareil dans l’autre sens en exportant la base de données depuis l’hébergeur et en aspirant en local tous les fichiers de Prestahop sur le FTP.

      A bientôt !

  13. bonjour,
    Merci pour ta vidéo, du coup j’ai eu le même soucis que toi avec l’impossibilité de me connecter à l’admin. Par contre de mon coté, je ne trouve pas le fichier shop_url dans ma base de donnée, j’ai la dernier version de presta, j’ai cherché partout, une idée? merci

    1. j’ai trouvé le dossier, tout est ok de ce coté mais toujours pas d’accès a l’admin… mes identifiants sont bon, des problème récent entre presta et php peut être? je sèche!!!!

      1. Hello,

        A voir aussi la version de PHP si c’est bien 7.1 parce que sinon cela peut causer problème à l’identification. Sinon ouvrez un topic sur le forum Prestashop pour expliquer les étapes « franchies » pour que la communauté vous aiguille.

        A bientôt !

    2. Bonjour,

      Normalement la table « ps_shop_url » doit exister sur Prestashop 1.7, il faudrait vérifier si vous avez bien affiché toutes les tables ou voir si vous n’avez pas une 2ème ou 3ème page de tables dans PHPmyAdmin.

      A bientôt !

  14. Bonjour,
    Comme d’habitude tes vidéos et suggestions sont très éclairantes pour la profane que je suis qui se « dépatouille » comme elle peut et apprend grace à toi au fil des problèmes rencontrés.
    J’ai une question : Infomaniak m’a installé Prestashop dans un sous dossier de /web avec leur installateur d’applications automatique en version 1.7.6.3.
    L’avantage: un répertoire dédié c’est plutôt propre 🙂 et l’accès à l’application via Infomaniak.
    L’inconvénient: Prestashop n’est pas directement à la racine. Du coup mon site apparaît avec l’URL monsite.ch/monsite alors que je souhaite uniquement l’URL monsite.ch.
    Je n’arrive pas à faire pointer l’URL sur le sous dossier. Une idée ? J’ai bien pensé à basculer le contenu du sous dossier à la racine mais du coup quid du cheminement de la BDD ?
    J’ai passé pas mal d’heures à développer, cela m’ennuierai de recommencer…
    Toute aide serait la bienvenue à ceux qui passent par là !
    Merci beaucoup !

    1. Bonjour,

      Effectivement pour ramener Prestashop à la racine du domaine, il faut donc remonter le dossier à la racine, mais ensuite cela implique de changer les liens stockés en base de donnés + revoir la configuration du .htaccess. Le tutoriel de migration Prestashop du local vers un serveur de production, donne déjà les pistes à vérifier : https://www.webbax.ch/2017/05/29/prestashop-1-7-transfert-local-vers-serveur/ (dans votre cas il faut suivre ce principe).

      A bientôt !

  15. bonjour,

    Comme d’habitude tes vidéos au top
    j’ai voulu exporter ma BDD « Prestashop »mais il me crée un dossier un fichier sql.html

    Merci

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *