Offre de lancement — -20% sur tous les VPS avec le code NVH20 · Déploiement en 60 secondes
Accueil / Documentation / Installation
Installation

Migrer un site vers un VPS sans interruption de service

Par Équipe NVHCloud 2026-09-18 Lecture : 5 min

Migrer un site vers un VPS n'a rien de risqué si l'on respecte un ordre précis : tout copier, tout tester sur le nouveau serveur, et ne changer le DNS qu'à la toute fin. Pendant toute la préparation, les visiteurs continuent d'utiliser l'ancien hébergement sans rien remarquer. Cette méthode vaut pour un site PHP, statique ou Node.js ; pour WordPress, notre guide dédié migrer WordPress vers un VPS sans coupure détaille les étapes propres à ce CMS.

1. Le principe

  1. On installe et on remplit le nouveau serveur en parallèle de l'ancien.
  2. On le teste en trompant uniquement son propre ordinateur sur l'adresse du site.
  3. On bascule le DNS quand tout fonctionne, avec un TTL court pour que la bascule soit rapide.
  4. On garde l'ancien hébergement actif quelques jours, en filet de sécurité.

2. Faire l'inventaire

Avant de toucher à quoi que ce soit, listez ce qui constitue le site :

  • Les fichiers : code, médias envoyés par les utilisateurs, fichiers de configuration.
  • Les bases de données et leurs identifiants.
  • Les tâches planifiées (cron) de l'ancien hébergement.
  • La version de PHP ou de Node.js et les extensions utilisées.
  • La messagerie : les boîtes mail sont-elles chez l'ancien hébergeur ? Si oui, elles ne déménagent pas avec le site, et les enregistrements MX ne doivent pas bouger.
  • La zone DNS complète, exportée ou recopiée.

3. Préparer le DNS, la veille

Abaissez à 300 secondes le TTL des enregistrements A, AAAA et du CNAME de www. Attendez au moins la durée de l'ancien TTL avant de basculer : ainsi, le jour J, tous les visiteurs suivront le changement en cinq minutes. Détails dans configurer les DNS.

4. Préparer le VPS

Installez la même pile logicielle que l'ancien hébergement, dans une version égale ou plus récente et compatible : serveur web, PHP ou Node.js, base de données. Suivez selon le cas Nginx, la pile PHP pour WordPress ou Node.js avec PM2, sans encore demander de certificat : Let's Encrypt ne pourra valider le domaine qu'après la bascule DNS. Sécurisez aussi le serveur dès maintenant : premiers pas et pare-feu.

5. Copier les fichiers et les bases

Les fichiers. Si l'ancien hébergement donne un accès SSH, rsync est l'outil idéal, lancé depuis le VPS :

rsync -avz --progress [email protected]:~/www/ /var/www/monsite.fr/

L'intérêt de rsync : relancé une seconde fois juste avant la bascule, il ne copie que ce qui a changé entre-temps. Sans accès SSH, téléchargez une archive par FTP ou depuis le panneau de l'hébergeur, puis envoyez-la sur le VPS avec scp.

Les bases. Exportez depuis l'ancien hébergement, avec mysqldump en SSH ou l'outil d'export du panneau, puis importez :

mariadb -e "CREATE DATABASE monsite CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
mariadb monsite < export.sql

Créez l'utilisateur de la base comme décrit dans sécuriser MariaDB, puis reportez les nouveaux identifiants dans la configuration du site. Rétablissez enfin les droits : chown -R www-data:www-data /var/www/monsite.fr.

6. Tester avant la bascule

C'est l'étape qui rend la migration sans risque. Sur votre ordinateur uniquement, faites croire que le domaine pointe déjà vers le VPS, en ajoutant une ligne au fichier hosts :

# Windows : C:\Windows\System32\drivers\etc\hosts (éditeur lancé en administrateur)
# macOS et Linux : /etc/hosts
203.0.113.10  monsite.fr www.monsite.fr

Ouvrez le site dans une fenêtre de navigation privée : vous voyez la version du VPS, alors que le reste du monde voit toujours l'ancienne. Testez tout ce qui compte : pages principales, formulaires, connexion, envoi d'e-mails, paiement en mode test, envoi de fichiers. Le HTTPS n'est pas encore en place : acceptez l'avertissement du navigateur, ou testez en HTTP.

Vérifiez aussi les journaux d'erreurs du serveur pendant vos tests : tail -f /var/log/nginx/error.log.

7. Basculer

  1. Si le site reçoit des données (commandes, comptes, commentaires), gelez-le : mode maintenance sur l'ancien hébergement.
  2. Relancez rsync et refaites l'export et l'import de la base pour récupérer les dernières données.
  3. Modifiez les enregistrements A et AAAA vers l'adresse du VPS. Ne touchez pas aux MX.
  4. Supprimez la ligne ajoutée dans votre fichier hosts.
  5. Dès que dig +short monsite.fr renvoie la nouvelle adresse, obtenez le certificat : certbot --nginx -d monsite.fr -d www.monsite.fr --redirect.

8. Après la migration

  • Gardez l'ancien hébergement actif une à deux semaines : quelques visiteurs aux caches tenaces y arrivent encore, et c'est votre plan de repli.
  • Recréez les tâches planifiées relevées dans l'inventaire.
  • Mettez en place les sauvegardes dès le premier jour : voir sauvegardes avec Borg.
  • Remontez le TTL à une heure ou plus une fois tout stabilisé.
  • Surveillez la Search Console les jours suivants : les erreurs d'exploration signalent une page oubliée ou une redirection manquante. Voir indexation Google et sitemap.

Questions fréquentes

Une migration vers un VPS fait-elle perdre le référencement ?
Non, si les adresses des pages restent identiques et que le site reste accessible pendant la bascule. Google ne s'intéresse pas à l'hébergeur mais au contenu, aux adresses et à la vitesse, qui s'améliore en général. Les pertes viennent des pages qui changent d'adresse sans redirection.
Combien de temps dure une migration ?
La préparation prend de une heure à une journée selon la taille du site. La bascule elle-même se fait en quelques minutes si le TTL a été abaissé la veille, et les visiteurs ne voient aucune interruption.
Mes e-mails vont-ils continuer de fonctionner ?
Oui, tant que vous ne modifiez pas les enregistrements MX et TXT liés à la messagerie. Changer l'adresse du site ne demande de modifier que les enregistrements A, AAAA et le CNAME de www.
Comment tester le site sur le VPS avant de changer le DNS ?
En ajoutant une ligne au fichier hosts de votre ordinateur, qui associe le nom du site à l'adresse IP du VPS. Seul votre ordinateur voit alors la nouvelle version ; retirez la ligne une fois les tests terminés.