Moving WordPress to a different hosting provider can be a daunting task. Following these steps will make this an easy process and prevent headaches in trying to figure out why your site doesn’t load after moving WordPress. Learn from my mistakes and follow this simple tutorial.
I have moved WordPress websites many times in the past, and this tutorial reflects my experience with doing this. This is the easiest method.
Step #1: Download Site Files and Database Backup
Having the ability to upload files and using the admin to upgrade means the copy of your site that you have on your computer may not be the files used on your website. So make sure to download all of the files using FTP.
Next you will want to export the mysql database used by your WordPress website. You can do this through a tool called phpMyAdmin (which is provided in most hosting control panels). You can also contact your hosting provider to send this file to you.
Once you download the latest files and database, you will not want to make any changes in your admin (including posts) until your site is transferred over.
Step #2: Update Paths and Database Connection
You will need to create the database on your new hosting account. Make a note of the host, username, password and database name and update the information that is in the /wp-config.php file.
If you are using WP Super Cache, you will also want to update the path that is used on your new host that is listed in the /wp-content/advanced-cache.php file. If you do not do this, your site will probably display a blank page. That happened to me at one point and it was a pain in the ass in figuring out what the problem was.
Step #3: Upload the Files and Import the Database
Your new hosting provider should have provided a method for you to connect to your account through FTP. Go ahead and upload your website to the new host. You will want to make the following directories writable after you upload the files (all of these are in the /wp-content/ folder): cache, plugins, upgrade and upload. Make sure to apply the permissions to all of the files in the sub directories (which should be an option in your ftp program). I personally like to use Filezilla.
Next, import the database backup file into the new database on your new hosting provider. Again, you can use phpMyAdmin for doing this.
Step #4: Test the Site
Before you update the domain settings on your site, you will want to verify that your site loads properly on the new website host. Often times, hosting providers will provide a temporary url that you can use to preview your website. If your host does not provide this, below is an alternative method on a Windows machine.
You will want to update your host file and point it to the ip address of your new website. This will make your browser load the website from the new hosting provider and you can preview how it looks as if your domain was loading from the new location. Follow the steps below to do this:
- Open up your hosts file in Notepad. In Windows Vista, it is located here: C:WindowsSystem32driversetchosts
- Add this line to the end of the file: PUT_IP_ADDRESS_HERE PUT_DOMAIN_ADDRESS_HERE
- Save the file and restart your browser. Load the domain that you put into that file and it should be loading from the new server. I like to upload a unique file as a double check to make sure things are loading from the new server.
Step #5: Make One Change in the Admin
Assuming everything looks good, you will need to apply an update to the options in the admin. Go to Settings: Miscellaneous and update the path used for the uploads folder. If you don’t know this path, you can find out by looking at a phpinfo() page.
If things look good at this point, you can update the domain to point to the new nameservers. That’s it you programing fool! 🙂
If you have any problems or questions, please post in the comments. Also, please share any additional tips you have with this process.