Comment migrer un site web depuis un hébergement Web mutualisé vers un VPS
Objectif
Votre site web évolue, sa consommation de ressources devient telle que votre hébergement web ne correspond plus à vos besoins en terme de performances ou en terme de capacité à traiter des tâches de plus de plus complexes. Migrer vers un VPS permet d'améliorer la rapidité et la réactivité de votre site web, d'augmenter les ressources de calcul disponibles (CPU, RAM, etc.), et d'avoir plus de contrôle sur l'environnement serveur. Ce guide se concentre sur les étapes essentielles pour migrer efficacement vers un VPS, tout en garantissant la continuité de service.
Découvrez comment migrer votre site web d'un hébergement mutualisé vers un VPS.
Prérequis
- Disposer d'une offre d'hébergement web active.
- Avoir souscrit à un VPS présent dans votre compte OVHcloud.
- Être connecté à votre espace client OVHcloud.
En pratique
OVHcloud met à votre disposition des services dont la configuration, la gestion et la responsabilité vous incombent. Il vous revient de ce fait d'en assurer le bon fonctionnement.
Nous mettons à votre disposition ce guide afin de vous accompagner au mieux sur des tâches courantes. Cependant, nous vous recommandons de faire appel à un prestataire spécialisé si vous éprouvez des difficultés. En effet, nous ne serons pas en mesure de vous fournir une assistance. Plus d'informations dans la section « Aller plus loin » de ce guide.
Étape 1 - Sauvegarder les fichiers et la base de données de votre site web
La première étape consiste à sauvegarder l'ensemble des fichiers de votre site web, généralement via le File Transfer Protocol (FTP), ainsi que sa base de données.
Si vous utilisez WordPress, suivez notre guide « Sauvegarder votre site WordPress » pour découvrir comment sauvegarder les fichiers et la base de données de votre site web WordPress, puis passez à l'étape 2.
Étape 1.1 - Se connecter à l’espace de stockage FTP de votre hébergement web
Suivez les étapes de notre guide « Se connecter à l’espace de stockage FTP de son hébergement web » pour vous connecter à l’espace de stockage FTP de votre hébergement web.
Étape 1.2 - Sauvegarder les fichiers via FTP
Si vous n'utilisez pas un CMS (WordPress, Joomla!, Drupal, PrestaShop, etc.), téléchargez une sauvegarde complète de l'ensemble des fichiers présents dans votre espace FTP sur votre appareil en local. Cela inclut tous les fichiers HTML, CSS, JavaScript, images, et fichiers de configuration (config.php, .env, etc.) qui constituent votre site web. Assurez-vous de bien récupérer l’intégralité des dossiers et fichiers du répertoire racine (souvent nommé public_html ou www) pour que l'ensemble du contenu nécessaire au fonctionnement de votre site web soit sauvegardé pour la migration.
Si vous utilisez un CMS et pour sauvegarder ses fichiers, choisissez la méthode de sauvegarde adaptée à celui-ci en cliquant sur l'onglet concerné.
Pour PrestaShop, sauvegardez les répertoires critiques tels que :
/admin: pour les fichiers relatifs au back-office./modules: pour les modules installés./img: pour toutes les images et icônes./themes: pour les fichiers du thème de votre site.
Pour plus de détails sur la structure des fichiers PrestaShop, consultez leur documentation technique officielle.
Pour Joomla!, les fichiers importants à sauvegarder incluent les répertoires :
/administrator: pour l'interface d'administration./components,/plugins: pour les extensions installées./images: pour les fichiers médias de votre site.
Retrouvez plus d’informations sur la structure des fichiers Joomla! dans la documentation officielle de Joomla!.
Pour Drupal, les dossiers importants à sauvegarder sont :
/sites: qui contient les fichiers spécifiques à votre site./modules: et/themes: pour les modules et thèmes personnalisés.
Pour plus d'informations, référez-vous à la documentation officielle de Drupal.
Une fois l'ensemble des fichiers de votre site web téléchargés, assurez-vous de les stocker dans un dossier local facilement identifiable pour faciliter leur transfert ultérieur vers le VPS.
Étape 1.3 - Sauvegarder la base de données
Si vous utilisez déjà une base de données Web Cloud Database pour votre site web, vous pouvez continuer à l'utiliser sans la migrer. Votre VPS se connectera à la base de données Web Cloud Database pour gérer les données.
Si vous envisagez de migrer la base de données sur le VPS, suivez les étapes de notre guide « Récupérer la sauvegarde de la base de données d'un hébergement web » pour sauvegarder votre base de données.
Étape 2 - Configurer votre VPS
Si vous n'avez pas encore de VPS, consultez la page produit VPS OVHcloud pour en acheter un. Assurez-vous de choisir un VPS qui correspond aux besoins de votre site web en termes de ressources (RAM, CPU, stockage, etc.) et aux spécifications techniques de votre CMS. Si vous n'êtes pas familier avec les VPS, consultez notre guide « Premiers pas avec un VPS ».
Étape 2.1 - Se connecter à votre VPS
Consultez la section « Se connecter à votre VPS » de notre guide « Premiers pas avec un VPS » pour vous connecter à votre VPS.
Étape 2.2 - Installer et configurer un serveur web sur votre VPS
Une fois connecté à votre VPS, installez et configurez un environnement de développement web sur votre VPS. Cette étape est essentielle pour garantir que votre serveur soit prêt à accueillir votre site web une fois les fichiers et la base de données transférés.
Pour installer cet environnement web, consultez notre guide « Installer un environnement de développement web sur un VPS ou un serveur dédié ».
Étape 3 - Transférer les fichiers de votre site web via SFTP
Utiliser le Secure File Transfer Protocol (SFTP) est la méthode recommandée pour transférer les fichiers de votre site web vers votre VPS. Il offre un niveau de sécurité supérieur au FTP grâce à l'utilisation du chiffrement fourni par le service SSH, déjà activé par défaut sur votre VPS OVHcloud.
Étape 3.1 - Se connecter à votre VPS en SFTP
Suivez notre guide sur l'utilisation de FileZilla et entrez les détails suivants :
- Host : utilisez l'adresse IP de votre VPS.
- Username et Password : les identifiants de votre compte utilisateur SSH sur le VPS.
- Port : utilisez le port 22 (port par défaut pour SFTP).
Étape 3.2 - Transférer les fichiers de votre site web vers le VPS
Une fois connecté à votre VPS, l'arborescence des fichiers locaux apparaît à gauche de l'interface FileZilla, et celle de votre VPS à droite.
Le répertoire web (ou racine web) est l’endroit où les fichiers de votre site web seront stockés pour être accessibles sur Internet. Par défaut, il peut s’agir d’un dossier nommé /var/www/html ou d’un autre répertoire configuré pendant l’installation de votre serveur web lors de l’étape 2.2. Assurez-vous de placer vos fichiers dans le dossier configuré comme racine web pour que votre site fonctionne correctement.
Si vous êtes connecté en SFTP avec un utilisateur non-root (ex. debian), vous n’aurez pas la permission d’écrire directement dans /var/www/html.
Procédure simple : déposer dans /home puis déplacer avec sudo
Dans FileZilla (SFTP)
- Côté « Site distant » (panneau de droite), allez dans :
/home/debian/ - Glissez-déposez le fichier de votre base de données (ex :
backup.sql) dans/home/debian/. Ne placez pas cette sauvegarde ni dans le dossier que vous allez copier vers la racine web (ex :/home/debian/site/) ni dans la racine web (ex :/var/www/html), sinon elle pourra être téléchargée publiquement. - Créez un dossier
sitedans/home/debian/(clic droit →Créer un répertoire), puis ouvrez-le. - Sélectionnez tous les fichiers de votre site web (la base de données ne doit plus s'y trouver) et glissez-déposez-les dans
/home/debian/site/. Ne déposez pas vos dumps SQL dans ce dossier. Gardez-les hors de la racine web, (ex :/home/debian/backup.sql.)
Sur votre VPS
Connectez-vous au VPS en SSH en consultant la section « Se connecter à votre VPS » de notre guide « Premiers pas avec un VPS ».
Exécutez les commandes suivantes :
Dans cet exemple, la racine web est /var/www/html. Si votre racine web est différente (configurée à l’étape 2.2), remplacez /var/www/html par votre chemin réel.
Créez la racine web si elle n’existe pas :
Copiez le contenu de /home/debian/site/ vers la racine web en préservant l’arborescence et les métadonnées :
Alternative si rsync n’est pas installé :
Donnez la propriété des fichiers au service web (www-data pour Nginx/Apache sur Debian/Ubuntu) :
Fixez les permissions des dossiers en 755 (navigable) et des fichiers en 644 (lisible) :
Étape 4 - Importer la base de données sur votre VPS (facultatif)
Si votre base de données est déjà hébergée sur un service Web Cloud Databases, il n'est pas nécessaire de la migrer vers le VPS. Vous pouvez conserver la base de données sur le service Web Cloud Databases et configurer votre VPS pour qu'il se connecte à cette base de données (étape 5).
Avant de commencer
- Votre fichier de sauvegarde (
.sql) a été déposé à l’étape 3.2 (par exemple :/home/debian/backup.sql). - Le Système de Gestion de Base de Données (SGBD) (MySQL / MariaDB) et son client en ligne de commande ont été installés à l’étape 2.2.
-
La base
db_name:- existe déjà si vous l’avez créée lors de l’étape 2.2 (ou via votre panneau d’administration).
- peut être créée automatiquement si votre sauvegarde
.sqlcontientCREATE DATABASE. - sinon, créez-la avant l’import :
bash sudo mysql -e "CREATE DATABASE db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"(remplacez
db_namepar le nom souhaité).
Importer la base de données
- Connectez-vous au VPS en SSH en consultant la section « Se connecter à votre VPS » de notre guide « Premiers pas avec un VPS ».
-
Lancez l’import en utilisant le client du SGBD :
Dans l'exemple ci-dessous, nous utilisons MySQL comme SGBD. Servez-vous de la documentation officielle du SGBD que vous avez installé lors de l'étape 2.2 afin d'utiliser la ligne de commande adéquate pour importer la base de données sur votre VPS.
bash mysql -u user_name -p db_name < /home/debian/backup.sql- Remplacez
user_namepar votre nom d'utilisateur MySQL (MySQL/MariaDB), et pas votre login SSH. - Remplacez
db_namepar le nom de la base de données à importer.
- Remplacez
-
Saisissez le mot de passe de l’utilisateur SGBD lorsqu’il est demandé et attendez la fin de l’import.
Étape 5 - Paramétrer les fichiers de configuration de votre site web
Après avoir transféré les fichiers de votre site web et, le cas échéant, importé la base de données sur votre VPS, il est important de mettre à jour les fichiers de configuration de votre site web pour garantir son bon fonctionnement. Les principales variables à ajuster sont souvent les informations de connexion à la base de données, ainsi que les chemins d'accès aux dossiers. Voici les configurations spécifiques à mettre à jour pour les principaux CMS.
Modifiez les variables suivantes dans le fichier wp-config.php :
- DB_NAME : le nom de la base de données.
- DB_USER : l'utilisateur de la base de données.
- DB_PASSWORD : le mot de passe de l'utilisateur.
- DB_HOST : l'hôte de la base de données (généralement localhost sur un VPS).
Pour plus de détails, consultez la documentation officielle de WordPress.
Pour éviter tout problème de sécurité, consultez la documentation officielle sur les permissions de fichiers pour WordPress
Modifiez les variables suivantes dans le fichier parameters.php :
- database_host : l'hôte de la base de données.
- database_name : le nom de la base de données.
- database_user : l'utilisateur de la base de données.
- database_password : le mot de passe de la base de données.
Pour plus de détails, consultez la documentation officielle de PrestaShop.
Pour éviter tout problème de sécurité, consultez la documentation officielle sur les permissions de fichiers pour PrestaShop.
Modifiez les variables suivantes dans le fichier configuration.php :
- public $host : l'hôte de la base de données (souvent localhost).
- public $db : le nom de la base de données.
- public $user : l'utilisateur de la base de données.
- public $password : le mot de passe de la base de données.
Pour plus de détails, consultez la documentation officielle de Joomla!.
Pour éviter tout problème de sécurité, consultez la documentation officielle sur les permissions de fichiers pour Joomla!
Modifiez les variables suivantes dans le fichier settings.php :
- host : l'hôte de la base de données (souvent localhost).
- database : le nom de la base de données.
- username : l'utilisateur de la base de données.
- password : le mot de passe de la base de données.
Pour plus de détails, consultez la documentation officielle de Drupal.
Pour éviter tout problème de sécurité, consultez la documentation officielle sur les permissions de fichiers pour Drupal
1. Mettre à jour les informations de connexion à la base de données
Identifiez les fichiers de configuration (comme config.php ou .env). Certains peuvent être situés dans des sous-dossiers. Dans ces fichiers, recherchez les paramètres de connexion à la base de données et modifiez-les en fonction des nouvelles valeurs de connexion du VPS :
- DB_HOST : adresse du serveur de base de données.
- DB_NAME : nom de la base de données.
- DB_USER : utilisateur de la base de données.
- DB_PASSWORD : mot de passe.
2. Configurer les chemins d'accès aux fichiers
Certains sites web utilisent des chemins absolus (exemple : /home/user/public_html/) pour des fichiers ou des ressources spécifiques tels que des images, des fichiers CSS, etc. Vérifiez que ces chemins sont correctement adaptés à la structure du serveur sur le VPS, par exemple /var/www/html/.
Pour éviter des erreurs de chargement de fichiers ou des liens brisés, assurez-vous d’ajuster ces chemins dans tous les fichiers de configuration, .htaccess, ou autres scripts contenant des liens vers ces ressources. Cela permet de garantir que le site web trouve correctement tous les éléments nécessaires à son bon fonctionnement, même après la migration.
3. Modifier le fichier .htaccess (facultatif)
Assurez-vous que le fichier .htaccess est bien configuré pour le nouvel environnement. Si vous utilisez des règles de réécriture (RewriteRule) pour personnaliser les URL, vérifiez que les chemins sont adaptés à la structure de votre VPS (exemple : /var/www/html/ au lieu de /public_html/). Cela garantit le bon fonctionnement des redirections et des accès.
Si le fichier .htaccess inclut des restrictions d'accès ou des paramètres de sécurité, comme la désactivation de la liste des répertoires ou la configuration de la mise en cache, modifiez ces paramètres pour qu’ils correspondent aux configurations et conditions de sécurité de votre nouveau serveur.
4. Configurer les permissions des fichiers et des dossiers
Assurez-vous que les permissions (exemple : chmod) des fichiers et dossiers sont configurées correctement pour éviter des erreurs d'accès. Sur un VPS, les permissions recommandées sont souvent 755 pour les dossiers et 644 pour les fichiers, mais cela peut varier selon vos besoins de sécurité.
Si vous utilisez une base de données Web Cloud Databases, vérifiez que votre VPS est autorisé à s'y connecter. Pour cela, ajoutez l'adresse IP du VPS à la liste des adresses IP autorisées. Cette configuration permet de sécuriser l'accès à la base de données et d'éviter tout problème de connexion. Consultez la section « Autoriser une adresse IP » de notre guide « Premiers pas avec le service Web Cloud Databases ».
Étape 6 - Associer votre nom de domaine à l'adresse IP du VPS
Avant de modifier les enregistrements de votre zone DNS pour pointer vers l'adresse IP du VPS, il est recommandé de réduire le Time To Live (TTL). Cela permet d'accélérer la propagation des changements, car les serveurs DNS mettront à jour les informations plus rapidement. Suivez l'étape « Le temps de propagation » de notre guide « Éditer une zone DNS OVHcloud » pour ajuster le TTL et configurer les enregistrements afin de faire pointer le nom de domaine vers le VPS.
Pour faire pointer le nom de domaine de votre site web vers votre VPS, configurez les enregistrements DNS du nom de domaine afin qu'ils dirigent le trafic vers l'adresse IP publique de votre VPS. Pour vous guider dans cette démarche, suivez notre guide « Éditer une zone DNS OVHcloud ».
Étape 7 - Vérifier le bon fonctionnement de votre site web
Une fois la migration terminée, testez votre site web pour vous assurer qu'il fonctionne comme prévu. Vérifiez toutes les fonctionnalités essentielles (formulaires, connexions utilisateur, paiement en ligne, etc.) et assurez-vous que toutes les pages s'affichent correctement.
Étape 8 - Sécuriser votre VPS
Après avoir migré votre site web sur votre VPS, il est crucial de sécuriser votre serveur afin de protéger vos données et garantir le bon fonctionnement de vos services. Voici quelques mesures à prendre pour renforcer la sécurité de votre VPS :
- Modifier le mot de passe SSH et le port d'accès SSH par défaut fournis par OVHcloud.
- Configurer un pare-feu.
- Configurer l'authentification à deux facteurs (2FA).
- Surveiller les logs.
- Etc.
Pour une liste complète des bonnes pratiques de sécurité, consultez notre guide « Sécuriser un VPS ».
Aller plus loin
Pour des prestations spécialisées (référencement, développement, etc.), contactez les partenaires OVHcloud.
Échangez avec notre communauté d'utilisateurs.