I recently had to Migrate a localhost WordPress site to Hosted Windows Server which was a little bit more difficult than expected. It appears most the tutorials online related to linux hosting so i decided i would write this article to help others. The site i setup for a friend is hosted on Webwiz which uses Windows hosting and Website panel for the hosting configuration. I looked into varying options of migrating the site and decided to use the Duplicator plugin.
Steps to Migrate a localhost WordPress site to Hosted Windows Server
- Install Duplicator plugin on your localhost wordpress site.
- Browse to the plugin and click “Create New” in the top right. This will create both an Archive file and an Installer file. The Archive file contains a scripted copy of your database and all your wordpress files and the Installer File is used to install the archive file on your hosting. All the settings for these are optional so pick and choose as necessary.
- Click “Next” which should scan your site.
- Approve any warnings as applicable and click “Build.”
- Download the Archive and Installer files to your computer.
- Make sure you have setup an FTP login in your websites Website panel and FTP the Archive and Installer.php file into the wwwroot folder of your website.
- In the website panel, create a MySQL database and create a user and assign the user to the database. Take note of the URL of the Internal/External Server(In my case these were the same). We will need this later.
- Browse to the the File Manager in the Website panel and set the write permissions as per the link to your wwwroot directory. Please note to Remove this after your install otherwise you will be open to hacking. Also see this link before setting file permissions.
- Browse to www.yoursite.com/installer.php. If all the prerequisites have executed successfully you should see “Requirements: Pass” at the top. In my case i saw the below to start with because i had not set the permissions correctly.
- Now select “Remove All Tables”. Please note this will delete all pre-existing data in your database so do this at your own risk.
- Key in your Database Host(the URL we noted down in step 7), Username, Password and Port.
- Click “Test Connection” and hopefully everything should validate.
- Click the “Run Deployment” button which will extract all the wordpress files and may take a few minutes.
- Once the above process is complete update the URL, path and title and press “Update” which may take a few minutes.
- Complete the final steps as described. You should now be able to view your website.
- In the WordPress Dashboard you may run into a problem when uploading new images. If this occurs it will state that a directory is unwriteable and you may need grant write permissions in the File Manager to this directory.
- Make sure to browse back to wwwroot and remove the write permissions set in step 8.
Hopefully you should now have a fully functioning website (I think that is everything). If i have missed any steps then please comment below.
UPDATE: 2017-07-25 – Even though WebWiz is cheap, after doing various updates for my friends website i would actually recommend using a linux based host such as SiteGround which i now use for all my clients (Disclaimer: Thats an affiliate link so if you sign up i will make money). Reason for this is that the permissions have to be strict to avoid hacking and this caused issues when trying to run plugins and restore backups. You would have to temporarily enhance the permissions and then reduce them after you completed your restricted action. Also some plugins are known to have incompatibilities with Windows such as Wordfence which if you are not using is a great security plugin and one that i recommend everyone uses on their wordpress sites. If you’re looking for someone to design your website then please get in contact.