For the life of this blog I’ve been using GoDaddy’s Economy hosting which was thrown in free with my domain name registration. The option was a very, very basic one, just designed to do some basic website hosting. My guess it was more for the use of parking the domain or doing a basic, “I’m Here!” site. Their documentation said that WordPress couldn’t be hosted on it. I didn’t see why it couldn’t and in the end proved you could by hosting this blog.
Now I don’t receive a ton of traffic, about 250 hits a day. I had no intention of paying for hosting since I really don’t need the extra bandwidth, storage, or database options. However, coming this July Microsoft is end-of-life’ing Windows Server 2003. I recently received an email that the server my blog was hosted on was going to be decommissioned in mid/late June. My assumption is that the host OS was Windows Server 2003 and since support was officially ending that GoDaddy had no plans to continue having it as a host platform.
I’m completely fine with this. The casualty though was my free hosting. GoDaddy was good and offered a free year hosted on their Windows platform. It doesn’t look like I can use my free hosting credit towards the site anymore. I ended up finally having to pay to have this blog on the web. Oh well! Hopefully I can get some people to view it. I’d love to get some ad impressions so that I can just pay for hosting.
Migrating Hosts
Moving from one host to another could be a disaster. I was expecting that something would go awry while moving my blog from one host to another. WordPress was previously hosted on a Windows machine and I decided that if I was going to pay for hosting I should probably go with a Linux setup. From my limited reading it seemed that using Linux and Apache with WordPress would be the best bet.
I took a backup of my database from the control panel of my old host. I then FTP’d into the host and downloaded the whole site to my local machine. At this point I pretty much had an entire backup of the entire site.
I logged into cPanel on the new host and immediately created a new MySQL database. Of course I created a separate user for the new database. I then restored my database from the backup. It was actually pretty darn easy!
After the DB was restored I created a new FTP user for the new host and setup a session to upload the files. After looking over how the directories were structured I uploaded the site files backup to the server. The most time in the whole process was downloading and uploading the site.
Now I had the DB and bits restored. I knew that I was going to have to update the WordPress configuration to point to the new database. Opening the configuration file I was able to change the required database information pretty easily. After doing this I took the IP for the host and through it in a browser window and was greeted by a functional homepage. Great!
I finished up the move by adjusting the DNS entries which point to the blog. After flushing my DNS cache and navigating to the homepage again I was greeted by a functional homepage! Yea! Done! Or so I thought…
I logged into the admin side of things to make sure the users were still there and my posts showing up in the list. I did this as my administrator account and not my author account. I wiped my hands and was happy with the less than hour’s worth of work.
Unintended Downtime
Since I only hit the home and admin pages I didn’t notice a problem. Today I logged into my site to upload some images for a post. I noticed that JetPack showed that I had a significant drop-off in visitors. I was down to one or none since I did the move. At this point all kind of alarm bells went off! Did the DNS entry cause the site to be unreachable?! I quickly ruled that out as I was able to get to it from my cell network and office connection. Again, I was only testing the home page.
Scratching my head I decided to finish up my post. After uploading the images, finishing the copy, and previewing it, I published the page. At the time I didn’t navigate to the post permalink url. I didn’t think much of it as it was time for work to start. Throughout the morning the nagging question of why my views had been so off really started wearing on me. I decided I would check some other measures to make sure that JetPack was actually tracking views correctly. After verifying with AdSense and Google Analytics I knew it had to be something with the site.
I double and triple checked my DNS settings. I read an article on how long it took for a DNS change to filter through. The best I could figure is that I should have had 24 to 48 hours of low visitor numbers. This still didn’t make sense to me. For some reason I decided to go to the article that I had written earlier. This was just by happenstance. I may have been wanting to see if I remembered to add a picture that I wanted to be on the site. Clicking on the article title on the home page sent me to a sad 404 page! Crap! That’s why my views dropped off. Most of my traffic comes in from Google searches or direct links to articles.
Googling the error was a task. I couldn’t find the right set of search terms that would provide much information on how to troubleshoot the problem. I eventually ran into a few posts about permalinks and .htaccess. My thoughts ran right to my choice of OS for hosting. I had moved from Windows to Linux. Would this be a disaster?! Another post suggested setting the permalinks back to the default setting. Grasping for straws I tried this. Bingo! Everything worked.
Oh no! All my pages that have been indexed by various search engines, posts in forums, etc would now cease to work! I was in absolute shock that I had reverted my presence on the web back to square one. Out of curiosity I decided to change the permalink format back to where I had it originally. Success!
So, there you have it. If you move your host you may need to reset WordPress’s permalink. Also, make sure that you don’t have a plugin messing with your .htaccess files. Hopefully, you’ll catch any downtime errors sooner than I did. All-in-all the migration was very easy.