Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Coupe WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Comment déplacer WordPress d’un serveur local vers un site en direct (2 méthodes)

De nombreux utilisateurs/utilisatrices de WordPress préfèrent travailler sur leur site en utilisant un serveur local sur leur ordinateur. Cela vous permet de travailler sur votre site en privé avant de rendre les modifications disponibles en ligne.

En fin de compte, vous devrez le déplacer vers un serveur direct pour le rendre accessible aux internautes. Cette transition est cruciale pour garantir le bon fonctionnement de votre site sur le site direct.

Nous avons travaillé sur de nombreux sites locaux, nous avons donc dû apprendre la manière la plus simple de transférer du contenu vers des sites En direct.

Dans cet article, nous fournirons des instructions étape par étape sur la façon de déplacer WordPress d’un serveur local vers un site direct.

How to move WordPress from local server to live site (2 methods)

Pourquoi déplacer WordPress d’un serveur local vers un site En direct ?

La version de votre blog WordPress sur un serveur local est un moyen sûr de tester les modifications apportées à votre site sans affecter les internautes.

Lorsque vous avez fini de perfectionner votre site, l’étape suivante consiste à passer de votre serveur local à un site en direct.

Nous allons vous afficher deux façons de déplacer votre site d’un serveur local vers un site en direct.

La première méthode utilise une extension de migration WordPress et est recommandée pour les débutants.

Dans la deuxième méthode, nous vous afficherons comment déplacer manuellement WordPress d’un serveur local vers un site en direct.

Vous pouvez choisir la méthode qui vous convient le mieux :

Avant de migrer votre site WordPress

Pour migrer WordPress d’un serveur local vers un serveur En direct, vous devez mettre en place un certain nombre d’éléments.

Tout d’abord, nous supposons que vous avez un site WordPress fonctionnant sur un serveur local (également appelé localhost) sur votre ordinateur et que vous y avez un accès complet.

Ensuite, vous devrez disposer d’un nom de domaine et d’un hébergeur.

Nous avons entendu d’innombrables histoires de débutants qui ont commencé avec des fournisseurs d’hébergement web médiocres ou gratuits et qui l’ont regretté. D’après notre expérience, le choix du bon fournisseur d’hébergement est déterminant pour la réussite d’un site.

Pour faciliter votre décision, nous vous recommandons d’utiliser Bluehost. C’est une entreprise d’hébergement WordPress officiellement recommandée, et ils donnent aux utilisateurs/utilisatrices de WPBeginner une remise exclusive + un domaine et un SSL gratuits.

En gros, vous pouvez Premiers pas pour aussi peu que 1,99 $ par mois.

Si vous voulez une excellente alternative à Bluehost, vous pouvez regarder Hostinger. Ils offrent également une remise exclusive aux utilisateurs/utilisatrices de WPBeginner avec un nom de domaine gratuit.

Si vous pouvez vous permettre de payer un peu plus, alors regardez du côté de SiteGround. Ils ont également une offre spéciale pour les lecteurs de WPBeginner.

Si vous avez besoin d’aide pour configurer votre site web, suivez notre guide étape par étape sur la création d’un site web.

Enfin, vous aurez besoin d’un programme FTP et saurez comment l’utiliser pour téléverser le site de votre serveur local sur le site en direct.

Vous êtes prêt ? Commençons à migrer votre site WordPress.

Tutoriel vidéo

Subscribe to WPBeginner

Si vous préférez des instructions écrites, continuez à lire.

Méthode 1 : Transférer WordPress du serveur local vers le site En direct à l’aide d’une extension de migration (Recommandé)

Cette méthode est plus facile et recommandée pour les débutants. Nous utiliserons une extension de migration WordPress pour déplacer WordPress de l’hôte local vers un site direct.

Étape par : Installer et configurer l’extension Duplicator

Tout d’abord, vous devez installer et activer l’extension Duplicator sur votre site local. Pour plus de détails, consultez notre guide étape par étape sur l’installation d’une extension WordPress.

Astuce de pro: Il existe également une version pro de Duplicator qui offre des sauvegardes sécurisées, un stockage dans le cloud, une restauration facile des sites, et bien plus encore.

Lors de l’activation, vous devez vous rendre sur la page Duplicator  » Sauvegardes et cliquer sur le bouton ‘Créer une nouvelle’.

Create new backup for migration

Vous accédez alors à un écran dans lequel vous pouvez donner un nom à votre sauvegarde.

Cliquez ensuite sur le bouton « Suivant ».

Name backup package

Duplicator va maintenant effectuer quelques tests pour vérifier que tout est bien en ordre.

Si tous les articles sont marqués « Bon », cliquez sur le bouton « Version ».

Build package

Ce processus peut prendre quelques minutes, en fonction de la taille de votre site. Vous devez laisser cet onglet ouvert jusqu’à ce qu’il soit terminé.

Une fois l’opération terminée, vous verrez des options de téléchargement pour les programmes d’installation et d’archivage. Vous devez cliquer sur le bouton « Télécharger les deux fichiers » pour télécharger les deux fichiers sur votre ordinateur.

Download both backup files

Le fichier « Archive » est une copie terminée de votre site WordPress. Il comprend tous les fichiers du cœur de WordPress ainsi que vos images, vos téléversements, vos thèmes, vos extensions et une sauvegarde de votre base de données WordPress.

Le fichier « Installer » est un script qui automatise l’ensemble du processus de migration en décompressant le fichier d’archive contenant votre site.

Étape par étape : Créer une base de données pour votre site WordPress En direct

Avant de pouvoir exécuter le programme d’installation ou de téléverser le site WordPress de l’hôte local vers votre serveur d’hébergement, vous devez créer une base de données MySQL pour votre nouveau site.

Si vous avez déjà créé une base de données MySQL, vous pouvez sauter cette étape.

Pour créer une base de données, vous devez vous rendre dans le tableau de bord cPanel de votre compte hébergeur. Localisez ensuite la section « Bases de données » et cliquez sur l’icône « Assistant de base de données MySQL ».

MySQL Database Wizard

Sur l’écran suivant, un champ permet de créer une nouvelle base de données.

Il vous suffit de donner un nom à votre base de données et de cliquer sur le bouton « Créer une base de données ».

Name new database

cPanel va maintenant créer une nouvelle base de données pour vous.

Vous devez ensuite saisir un identifiant et un mot de passe pour votre nouvel utilisateur, puis cliquer sur le bouton « Créer un utilisateur ».

Create new database user

Ensuite, vous devez ajouter l’utilisateur que vous venez de créer à la base de données.

Tout d’abord, cliquez sur la case à cocher « Tous les privilèges ».

Check all privileges

Ensuite, défilez vers le bas et cliquez sur le bouton « Apporter des modifications » pour enregistrer vos modifications.

Votre base de données est maintenant prête à être utilisée avec votre site WordPress. Confirmez Notez-vous le nom de la base de données, l’identifiant et le mot de passe. Vous aurez besoin de ces informations à l’étape suivante.

Étape par 3 : Téléverser les fichiers du serveur local vers le site WordPress En direct

Vous devez maintenant téléverser les fichiers d’archive et d’installation de votre site local vers votre compte hébergeur.

Tout d’abord, connectez-vous à votre site en direct à l’aide d’un client FTP. Une fois terminé, assurez-vous que le répertoire racine de votre site est complètement vide.

Normalement, le répertoire racine est le dossier /home/public_html/.

Certaines entreprises d’hébergement WordPress installent automatiquement WordPress lorsque vous vous inscrivez. Si vous y avez des fichiers WordPress, vous devez les supprimer.

Ensuite, vous pouvez téléverser les fichiers archive.zip et installer.php de Duplicator dans votre répertoire racine vide.

Upload archive and installer files

Étape par étape : Exécution du script de migration

Après avoir téléversé les fichiers de migration, vous devez visiter l’URL suivante dans votre navigateur :

http://example.com/installer.php

N’oubliez pas de remplacer « exemple.com » par votre propre nom de domaine.

L’assistant de migration de Duplicator est alors lancé.

Le programme d’installation effectue quelques tests et initialise le script.

Duplicator migration wizard step 1

Dans la section Configuration, il vous sera demandé de saisir votre hébergeur MySQL, le nom de votre base de données, votre identifiant et votre mot de passe.

Votre hébergeur sera probablement un hébergeur local. Ensuite, vous saisirez les détails de la base de données que vous avez créée à l’étape précédente.

Cliquez ensuite sur le bouton « Valider » pour vous assurer que les données saisies sont correctes.

Validate settings

Cliquez ensuite sur le bouton « Suivant » pour continuer.

Duplicator va maintenant importer la sauvegarde de votre base de données WordPress depuis l’archive dans votre nouvelle base de données.

Il mettra également à jour les URL pointant vers le site local et votre nouveau site en direct.

Vous pouvez maintenant cliquer sur le bouton « Connexion Admin » pour saisir la zone d’administration WordPress de votre site en direct.

Admin login

Une fois que vous vous serez connecté à votre site direct, Duplicator nettoiera automatiquement les fichiers d’installation.

C’est tout. Vous avez bien déplacé WordPress du serveur local vers votre site En direct.

Méthode 2 : Transférer manuellement WordPress du serveur local vers le site En direct

Dans cette méthode, nous allons vous afficher comment déplacer manuellement WordPress du serveur local vers votre site En direct. Elle sera utile si la première méthode ne fonctionne pas ou si vous préférez le faire manuellement.

Étape par étape : Exportation de la base de données WordPress locale

La première chose à faire est d’exporter votre base de données WordPress locale. Nous utiliserons phpMyAdmin pour ce faire.

Si vous ne le connaissez pas, vous pouvez consulter notre guide sur la gestion des bases de données WordPress à l’aide de phpMyAdmin.

Allez simplement sur http://localhost/phpmyadmin/ et cliquez sur votre base de données WordPress. Ensuite, cliquez sur le bouton  » Exporter  » dans la barre de menu supérieure.

Export from localhost

Dans l’option « Méthode d’exportation : », vous pouvez choisir « Rapide » ou « Personnalisé ». L’option personnalisée vous offre plus d’options pour l’exportation de votre base de données.

Mais nous vous recommandons de choisir « Rapide » et de cliquer ensuite sur le bouton « Go » pour télécharger votre base de données.

Export WordPress database using phpMyAdmin

Étape par étape : Téléverser les fichiers WordPress sur le site En direct

Nous allons maintenant devoir déplacer tous les fichiers de votre site vers le site En direct.

Pour Premiers pas, ouvrez votre client FTP et connectez-vous à votre compte d’hébergement.

Une fois que vous êtes connecté à votre site En direct, assurez-vous de téléverser les fichiers dans le bon répertoire. Par exemple, si vous souhaitez que le site soit hébergé sur « yoursite.com », vous devrez téléverser tous les fichiers dans votre répertoire public_html.

Sélectionnez maintenant vos fichiers WordPress locaux et téléversez-les sur votre serveur live.

Upload WordPress files FTP

Étape par étape : Créer une base de données MySQL sur votre site En direct

Pendant que votre client FTP téléverse vos fichiers WordPress, vous pouvez commencer à importer votre base de données sur le serveur direct.

La plupart des fournisseurs d’hébergement WordPress proposent cPanel pour gérer votre compte d’hébergement, nous allons donc vous afficher comment créer une base de données à l’aide de cPanel.

Tout d’abord, vous devez vous connecter à votre tableau de bord cPanel et cliquer sur l’icône « Assistant de base de données MySQL », qui se trouve dans la section « Bases de données ».

Select MySQL database wizard

Dans l’écran suivant, vous pouvez créer une nouvelle base de données.

Vous devez donner un nom à votre base de données, puis cliquer sur « Créer une base de données ».

Name and create new database

cPanel va maintenant créer automatiquement une nouvelle base de données pour vous.

Saisissez ensuite un identifiant et un mot de passe pour votre nouvel utilisateur, puis cliquez sur « Créer un utilisateur ».

Create new database user

Ensuite, vous devez ajouter l’utilisateur que vous venez de créer à la base de données.

Tout d’abord, cochez la case « Tous les privilèges ».

Check all privileges checkbox

Ensuite, défilez vers le bas et cliquez sur « Apporter des modifications » pour enregistrer vos modifications.

Vous avez bien créé une nouvelle base de données pour votre site WordPress en direct.

Étape par étape : Importation de la base de données WordPress sur le site En direct

L’étape suivante du processus consiste à importer votre base de données WordPress.

Allez dans votre Tableau de bord cPanel, défilez vers le bas jusqu’à la section ‘Bases de données’, et cliquez sur ‘phpMyAdmin’.

Click on phpMyAdmin

Cela vous mènera à phpMyAdmin, où vous voudrez cliquer sur la base de données que vous venez de créer ci-dessus. phpMyAdmin affichera votre nouvelle base de données sans tables.

Cliquez ensuite sur l’onglet « Importation » dans le menu supérieur. Sur la page d’importation, cliquez sur le bouton « Choisissez un fichier » et sélectionnez le fichier de base de données du site local que vous avez enregistré lors de la première étape.

Import database via phpMyAdmin

Cliquez ensuite sur le bouton « Go » en bas de la page. Votre base de données sera automatiquement importée dans phpMyadmin.

Étape par étape : Modification de l’URL du site

Vous devez maintenant modifier l’URL du site dans votre base de données afin qu’il se connecte à votre site WordPress direct.

Dans phpMyAdmin, recherchez la table wp_options dans votre base de données que vous venez d’importer ci-dessus.

Si vous avez modifié le préfixe de votre base de données, il se peut qu’au lieu de wp_options, ce soit {nouveau_préfixe}_options.

Cliquez ensuite sur le bouton « Parcourir » situé à côté de wp_options. Vous pouvez également cliquer sur le lien dans la colonne latérale pour ouvrir la page contenant la liste des champs de la table wp_options.

Browse the wp options table

Ensuite, dans la colonne options_name, vous devez rechercher l’option siteurl.

Cliquez ensuite sur l’icône « Modifier ».

Edit siteurl in phpMyAdmin

Une fenêtre s’ouvre, dans laquelle vous pouvez modifier le champ.

Dans le champ option_value, vous verrez l’URL de votre installation locale, qui sera quelque chose comme http://localhost/test.

Vous devez insérer l’URL de votre nouveau site dans ce champ, par exemple : https://www.wpbeginner.com.

Vous pouvez ensuite enregistrer le champ en cliquant sur le bouton « Go ».

edit the siteurl field

Ensuite, vous devez suivre les mêmes étapes que ci-dessus pour le nom de l’option d’accueil. Le menu wp_options peut comporter plusieurs pages. En général, l’option d’accueil se trouve sur la deuxième page.

Ensuite, mettez à jour l’URL de la page d'accueil, afin qu’elle soit identique à l’URL de votre site direct.

Étape par 6 : Configurer votre site En direct

Maintenant que vous avez importé la base de données et téléversé votre contenu, il est temps de configurer WordPress.

À ce stade, votre site devrait afficher une erreur« Erreur lors de l’établissement de la connexion à la base de données« .

Pour corriger ce problème, connectez-vous à votre site à l’aide d’un client FTP et ouvrez le fichier wp-config.php.

Vous rechercherez les lignes de code suivantes :

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'database_name_here' );
/** MySQL database username */
define( 'DB_USER', 'username_here' );
/** MySQL database password */
define( 'DB_PASSWORD', 'password_here' );
/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

Vous devrez fournir le nom de la base de données, l’identifiant et le mot de passe que vous avez créés précédemment.

Ensuite, enregistrez le fichier wp-config.php et téléversez-le sur votre serveur d’hébergement WordPress.

Maintenant, lorsque vous visitez votre site, il devrait être en direct.

Après cela, vous devez vous connecter à votre panneau d’administration WordPress et aller dans les Réglages  » Général« . Ensuite, sans rien modifier, défilez jusqu’en bas et cliquez sur le bouton  » Enregistrer les modifications « .

Save general settings

Confirmez-vous que l’URL de votre site est corrigée partout où elle doit l’être.

Une fois que vous avez fait cela, allez dans Réglages  » Permaliens, puis défilez vers le bas et cliquez sur  » Enregistrer les modifications  » pour vous assurer que tous les liens de publication fonctionnent correctement.

Save permalinks settings

Chaque fois que vous déplacez un site WordPress d’un domaine à un autre ou d’un serveur local à un site en direct, vous serez confronté à des liens brisés et à des images manquantes.

Nous allons vous afficher deux façons de mettre à jour les URL. Vous pouvez choisir celle qui vous convient le mieux.

1. Mettre à jour les URL à l’aide de l’extension Search & Replace Everything (Recommandé)

Le moyen le plus sûr de corriger cela est d’utiliser Rechercher & Remplacer tout. C’est une puissante extension WordPress qui vous permet d’effectuer facilement des tâches de mise à jour en masse sur votre site sans écrire de requêtes de base de données complexes.

Tout d’abord, vous devez installer et activer l’extension Search & Replace Everything.

Après l’activation, allez sur la page Outils  » WP Search & Replace.

Search and replace URLs from local to live site migration

Saisissez ensuite l’URL de votre site local dans le champ « Rechercher » et l’URL de votre site direct dans le champ « Remplacer par ».

Défilez un peu et cliquez sur « Tout sélectionner » sous les tableaux. Cela garantit que l’extension recherchera l’ancienne URL partout dans la base de données.

Select tables

Cliquez ensuite sur le bouton « Prévisualisation de la recherche et du remplacement » pour continuer.

L’extension recherchera dans votre base de données toutes les instances de l’ancienne URL, puis prévisualisera les résultats.

Preview changes

Si tout semble correct, cliquez sur « Remplacer tout » pour enregistrer les modifications.

Vous verrez un avertissement concernant les modifications que vous êtes en train d’effectuer. Cliquez sur « Oui » pour continuer.

L’extension va maintenant mettre à jour la base de données et remplacer les URL locales par l’URL actuelle de votre site.

2. Mise à jour manuelle des URL (avancé)

Une autre façon de mettre à jour les URL est d’utiliser la requête SQL suivante :

UPDATE wp_posts SET post_content = REPLACE(post_content, 'localhost/test/', 'www.yourlivesite.com/');

Allez simplement dans phpMyAdmin, cliquez sur votre base de données, puis cliquez sur « SQL » dans le menu supérieur et ajoutez la requête ci-dessus.

Confirmez les modifications apportées aux URL de votre site local et de votre site direct, puis cliquez sur le bouton « En direct ».

Fixing WordPress images and broken URLs after moving to live site

Voilà, c’est fait. Vous avez bien migré WordPress de votre serveur local vers un site En direct.

En direct, votre site est opérationnel et fonctionne correctement. Si vous remarquez des erreurs, vous pouvez consulter notre guide des erreurs courantes de WordPress pour obtenir de l’aide pour le dépannage.

Nous espérons que cet article vous a aidé à déplacer WordPress d’un serveur local vers un site En direct. Vous pouvez également consulter notre guide sur le déplacement d’un site direct vers un serveur local ou regarder la liste de contrôle ultime de migration de site Web pour les étapes pratiques de migration de WordPress.

Si vous avez aimé cet article, veuillez alors vous abonner à notre chaîne YouTube pour obtenir des tutoriels vidéo sur WordPress. Vous pouvez également nous trouver sur Twitter et Facebook.

Divulgation : Notre contenu est soutenu par les lecteurs. Cela signifie que si vous cliquez sur certains de nos liens, nous pouvons gagner une commission. Consultez comment WPBeginner est financé, pourquoi cela compte et comment vous pouvez nous soutenir. Voici notre processus éditorial.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

L'ultime WordPress Toolkit

Accédez GRATUITEMENT à notre boîte à outils - une collection de produits et de ressources liés à WordPress que tous les professionnels devraient avoir !

Reader Interactions

908 commentairesLaisser une réponse

  1. Axel

    I love this entry, I use it as a checklist every time I make a migration.

  2. Gary

    I keep getting stopped at step 4. when I import my datatbase I get the following error

    #1231 – Variable ‘character_set_client’ can’t be set to the value of ‘NULL’

    I only have limited sql knowledge and never done anything like this before. any help/guidance would be greatly appreciated

  3. Andrew

    Hello,

    So I got to step 6 without any issues until my website failing to become live. I went into my wordpress general setting and my site url was still a localhost. Am I suppose to change the site url before I upload it into the ftp program and into my host, or can i leave that as localhost? Or, do i change the site url in wordpress after i’ve uploaded my files into my hosting site?

    This page was super helpful, thanks!

    • Daneesh

      Hi. Thanks so much for this, excellent tutorial. I seem to have got stopped at Step 6. I am still getting a « Error establishing database connection » error. DO i need to change the hostname field in the config.php too? and what do i change that to?

  4. Simon

    Amazing, it worked, thank you.

  5. Annete Momanyi

    Thank you for the article. I have managed to sort my problem after following these steps.

  6. Arash

    Hello there,

    I have two questions and I’d be grateful if you could help me!

    1) Why do I have two ht-docs and wp-content folders inside my WordPress folder?

    2) When I move my WordPress website from a localhost to the live host, It’s possible to remove my localhost or should I keep it forever?

    Thanks in advance!

    • Matze

      1) By installing WordPress on your hosted server, these docs/folders will be automatically added. I think while uploading your files from local to live via FTP __ht-docs__ and __wp-content__ just weren’t replaced.

      But please check your local files which are normally located in the WAMP/MAMP folders unter __htdocs__ . Are there also two copies of the datas? Then you should find out, which one is the right one …

      2) At the time uploading your files from local to live, the local datas are a backup. After some weeks, changing and editing your live site on the server you can delete the locals.

      But you should create a backup regular and store the datas local (Quote: « If you are doing this on a regular basis, then we highly recommend that you get BackupBuddy because it will make your life easy. You will thank us for that later »)!

      Hope it helps :)

  7. Starfleet Nnaemeka

    Wow! What a wonderful tutorial , seriously i really appreciate the effort you guys brought out to write these tutorial. Thanks it really helped me to set up my website build on wordpress from localhost on wampserver.

  8. Leo Laroche

    i have followed all the steps, but when i type in my website the old website comes up. Can someone help me please.

  9. rachel asakome

    i have followed steps 1-5, but i am not sure where my site is. sorry it sounds really dumb but i am not great with technology. I have uploaded the files, but when i type in my website the old website comes up

  10. Justas

    server DNS address could not be found.
    ERR_NAME_NOT_RESOLVED

    I changed everything accordingly, but still can’t connect.

  11. Carrie

    Could you please explain on how to do this with webmatrix? I have a PC and my wordpress install on my local PC was with webmatrix. I do not have a MAC. Where on webmatrix do I export? I am confused about this. Also, you have create a db in cpanel my sql. Where do I save this new db? On the cpanel someplace or on my local pc hard drive and under what name? I have a domain with go daddy and a web hosting I purchased. They said to do a brand new fresh install of wordpress from there site…. why would I do this? I already have my wordpress via webmatrix on my local pc this is where the website I built resides. How do I get this on my web hosting? Confused on the db stuff and how to get my local wp files/db to my web host. Thank you.

  12. Neo An

    Very clear!
    Thank you very much!

  13. Milica

    This is a great tutorial. Thanks a lot! :)

  14. Amber

    I have followed all of these steps and when I view my site it is showing my content like words and links but none of the decorative stuff or plugins etc. My menus are showing up as just a list of words as if I created a page without any real CSS. My CSS files are not missing so I do not know where the mess up is happening. I tried to do the part about fixing broken links and I am not 100% of what I should put after the localhost part. I used the name of the folder that my entire wordpress database/files/etc are in. I cannot seam to figure out what is going wrong.

    • Abdul

      @AMBER and all those struggling with the same issue, the problem with the deployment process of WordPress’ database is due to the empirical replacement of your local URI with the live site’s URI as explained in this article at Step 7. If you just execute the UPDATE SQL statement as shown, you, most of the time, end up corrupting your database. Why? The reason is simple: WordPress has a way of serializing some metadata for its own convenience. This post explains it pretty well: nacin.com/2010/04/18/wordpress-serializing-data

      If you look at this array:

      array( ‘apple’, ‘banana’, ‘orange’ ),

      when serialized it looks like this:

      a:3:{i:0;s:5: »apple »;i:1;s:6: »banana »;i:2;s:6: »orange »;},

      where:

      – a:3 stands for « array of size 3 »
      – i:0; i:1; i:2 stand for « integer index 0; integer index 1; integer index 2″ respectively
      – s:5: »apple » stands for « string, length 5, data=apple »
      – s:6: »banana » stands for « string, length 6, data=banana », etc.

      As you can see, any serialized string is stored along with information about it’s length. So when you do a simple search and replace in your tables, all occurrences will be replaced indeed but the string’s length metadata won’t.

      In the case your local URL’s length equals your live site’s URL length, then you’re lucky; if they don’t match then you’re in trouble.

      The question now is: « How do I fix this? ». I’m happy to say that, fortunately, there are many plugins that can help you with this but one that’s really simple and good at it is « Better Search Replace ».

      Simply install this plugin in your local WordPress installation and proceed as explained in this article. The only place where you can safely replace your local URL is in the wp_options table as explained at Step 5.

      Once you’re done installing the plugin, in the admin panel, go to « Tools, Better Search Replace », in the « Search » text box type your local site’s URL (e.g. http://localhost:12345) and in the « Replace with » text box, type your live site’s URL (e.g. http://www.example.com) and you should be ready to go. Just make sure you don’t include any trailing forward slash « / » in the URL (at the end like http://localhost:12345/ or http://www.example.com/)

      I hope this explanation was useful and please let me know if it helped.

      Happy coding!

  15. Simon

    Hi,
    Brilliant article and very easy to follow.
    However, as a WordPress virgin I am struggling with the whole concept of having a separate database from the website. I have created everything locally on my PC. But the local PHP Admin will allow me to use however many characters i like in naming my database but my remote server/host (123-reg) will only allow 9 (my original had 11) so…. the database name locally is different from the database name remotely. I have exported the database tables and imported them in to the remote database, renamed my wp-config to point to the new shorter database name with the correct user name and password but i am still getting the ‘Error establishing a database connection’
    message. Any suggestions?
    Could the fact that the tables are exported from a database with a different name from the one they are being imported to make a difference?

  16. Gabriel

    Hello I made all of your steps but I can see only a white page. It doesn’t notify me an error.

    I upload everything in a subdirectory of my website. It’s because of that? Is there a solution?

  17. Patrick Hasch

    Great article, if the upload of zipped files doesn’t work try uploading .sql files instead.

    • Tony

      I also faced the same problem.

  18. John James

    Hello. From your step 6, you said we should change database name, user and password. Are we supposed to change the hostname too?

      • John

        Step 3 says nothing about host names.

        • WPBeginner Support

          When you are creating a database on your webhost, you will be able to see the hostname. If you don’t then this means you are using localhost.

  19. Mohd Hasan

    i followed all steps but going to install.php page , someone can help me , i really need your help

  20. Gabor

    Hello!

    i have 500 internal error on server.
    I think the problem is with .htaccess.
    Can u help in this?

    • Dawn

      I am having this same issue. I followed every step exactly, I fixed the wp-config.php file and re-uploaded it, but now when I go to my live site it says,

      « This page isn’t working

      [my site] is currently unable to handle this request.
      HTTP ERROR 500 »

      • Dawn

        I should have said that that is the error I get when I try to go to my wp-admin. When I go to the site itself it’s blank. :(

  21. Axel

    The solution for image references is to execute the following scripts on your DB:
    (I can’t write the real scripts because wpbeginner.com thinks I’m doing SQL injection :\ )

    UPDATE wp_posts to set the value of column guid to the value of function REPLACE(guid, ‘http://old.site.url’, ‘http://new.site.url’)

    AND

    UPDATE wp_postmeta to SET the value of column meta_value to the value of function REPLACE(meta_value, ‘http://old.site.url’, ‘http://new.site.url’)

    Also don’t forget to check permissions for wp-content/uploads to ensure you can add more images.

  22. Aimy

    Hi,

    Thanks for this. I did everything as you described. It seemed that everything went well apart the front page that shows nothing but just the navigation menu.
    When I go to the page builder of the front page it shows that there is nothing added there.
    Any advice?

  23. Krishna

    Dear wpbeginner owner

    Its working for me !

    thank you very much!

  24. Philippe

    Damn I’m so lucky wpbeginner exists, I’ve finally managed to get my website to work thanks to this post, I had to fight my way trough (there is an older database-version on my webhosts server) but I did it thanks to you guys!

  25. Umai Hassan

    URL Changing
    I have changed the URL in wp_option table but only home page loads correctly other pages links are still set to localhost/something ??
    What should I do to change all links??

  26. Cos

    Brilliant article – thanks! Got through the process without a hitch first-off :-)))

  27. Dan Odaka

    Hey, after doing all that, when I go to my site I get a page that shows me the index of wordpress and not my site. what do I do?

    • WPBeginner Support

      This could happen due to an incomplete file transfer. Try to upload your WordPress files again.

      Administrateur

  28. Sonja

    Hi. thank you very much for this post. It seems to be very helpful and I’ve tried to follow every step, but now that I’m done, when I go to my URL I get a « Server not found » error (The host shows me a preview with « under-construction » and their logo, which was online before I uploaded the data and database – shouldn’t I at least get that?). Do you have any ideas where I might have gone wrong, and is it best to delete everything and start again from scratch, or overwrite it, or look for any particular errors?
    Thank you for any help!

  29. Hugues Pinsonneault

    im wondering if you have any recommendation for developing locally new functionalities on a local dev install, while the client can still do updates on the real database.

  30. shah

    Hi
    Thankyou for the details, but i am still not able to get the path of images correct inspite of the changes done … i have my folders in public_html and have my db created …my live website is working fine except for the pic / logos

  31. zarna

    My wordpress site went live but my images are not getting replicated and they aren’t visible. Can you please guide me what should be the images folder structure while uploading it to live ??

    Your help and guidance would be appreciable.. Thank you.

  32. Coil McCoy

    Great post !!!
    Only the last part doesn’t worked for me, the pictures and links still missing !
    Any clue?
    thank you

  33. Vinish Chaudhary

    Hello,
    All great beside this You don’t have permission to access / on this server.Don’t know why it is showing when I try to access my site.I have done all steps like you said but getting this error can anyone please help me to solve this problem.

  34. Sudais

    Instead of this long way,I use a plugin called wp all in one migration,I just need to import a single file using a plugin when I go live and all done,no playing with databases,etc.I think everyone should do that saves alot of time and handywork.

    • hiren

      can u put the demo ..

      thanks.
      hiren patel.

  35. Paul

    Great article ! But I’m still stuck at the last step. Images aren’t showing on my website.

    Well in fact they does, but only on my PC. Everybody else is getting a buggy website.

  36. Farooq Bashir

    Wow .. Great Article sir
    Its Perfect Working.
    Thanks

  37. Bikram Ray

    Hi,

    No doubt; a very useful article. But I got stuck in the last step. I ran the SQL update query but still having issues regarding image path.

    Just one thing; while uploading the file through FTP, I did not upload the wordpress folder (the test folder) rather I uploaded whatever inside it.. So in the server there is only the folders and files directly placed under ‘public_html ‘

    Regards,
    Bikram

  38. Kay

    DIDN’T WORK!!

    Error
    SQL query:


    — Database: `wordpress`

    CREATE DATABASE IF NOT EXISTS `wordpress` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
    MySQL said: Documentation

    #1044 – Access denied for user ‘ksalim’@’localhost’ to database ‘wordpress’

  39. Damilola

    A very awesome article, it really made a project i was working on for a client already on my local machine easy to move to his server, i mean i literally tried to develop the website all over again and it was such a pain in the ass….Thank you

  40. Tim Vincent

    Thank you so much for this guide. I struggled doing this for some time before finding this. I followed it word for word and all seems to work. I am very grateful!

  41. sonu

    hello! syed

    i want to ask you to from where i get the best free wordpress simple attractive theme which laterly i planned to upload on the live server….any help would be much appreciated….thanks…

  42. sonu

    hello! syed

    i want to ask you when we upload the worpress site from locahost to live server….i just want to ask the wordpress having lot of files and inside the wp-content/themes/… having three different types of theme like twenty fourteen,twenty thirteen ,so is it needed to upload all these themes or not….help would be much appreciated…..thnks…..

    • Ridhik

      No,u just upload the theme folder that currently activated in your site.

  43. Andres Paz Soldan

    Thank you! This was very useful!

  44. Lellys

    First of, thank you!

    I did everything and my site is working, but when I need to login on my wp-admin, it show me a blank screen and nothing happens. Any idea?

  45. paddy lutaaya

    thank you for this article i have followed the steps and uploaded my website to c panel but it has failed to work it brings internal error please help me solve this thank you

  46. Phillip Pilkington

    Allgreat advise except step 6. I have not got past this stage, the advice is not clear. My website shows the Error Establishing Database Connection. This next part doesn’t explain anything to me.
    « To fix this, connect to your website using an FTP client and edit wp-config.php file. Provide the database name, user and password you created earlier in Step 3. Save the wp-config.php file and upload it back to your server. Visit your website, and it should be live now.  »

    I am connect via ftp, then just edit the file….no, nothing happens from here.I open the file in aneditor but I don’t make any changes because it does not show anything about whatis expalined.

    Regards,

    • Tyler Hall

      Hey, I am currently transferring the files as we speak. Not sure if you found a solution yet (hopefully you have its been 15 days) but you should probably change the hostname: /** MySQL hostname */
      define(‘DB_HOST’, ‘ ‘ your hostname before should have been your localhost or similar.

  47. Himanshu

    Thanks for the post. Really helped solve my problem. Although I faced some issues with database importing. After much effort, updating the phpmyadmin version fixed it for me. If possible you could also include common errors in each section, so that a beginner doesn’t get lost. As it happens, most likely you are going to face some error here and there. Other than that great post. Thanks.

  48. Ola

    Hi,

    Thanks for this, the steps are so direct and you made WordPress uploading fun.

  49. Andy

    Hi. When I go to my website it says Welcome to: yourwebsite.com
    This Web page is parked for FREE, courtesy of GoDaddy.com. Do I have to register my domain? I just thought of a random website name to put in for the changing site url step 5. Also when I enter the local host site I get the message the webpage could not be found. What should I do?

Laisser une réponse

Merci d'avoir choisi de laisser un commentaire. Veuillez garder à l'esprit que tous les commentaires sont modérés selon notre politique de commentaires, et votre adresse e-mail ne sera PAS publiée. Veuillez NE PAS utiliser de mots-clés dans le champ du nom. Ayons une conversation personnelle et significative.