(Reading time: 2 – 4 minutes)
So you want to switch your blog to a subdomain, and you want everything to work.
Yeah, right!
Ok, it’s not that difficult, but it is a little bit picky. You will need to pay attention and be careful.
As usual, the first thing to do is back up everything:
- Database backup, and
- WordPress installation backup.
We want to use the subdomain http://blog.mydomain.com/ mapped to http://mydomain.com/wpblog. The benefits of this are:
- Looks more professional.
- Helps shroud the site structure from bonehead script kiddies.
A real professional, thoroughly malicious hacker probably won’t be fooled. Then again, the pro isn’t likely going to smash your site either by accident or for fun. He wants to use your bandwidth anonymously, not get you kicked off the host.
The next thing to do is put on some decent music. At the moment, I’m in the mood for Norman Fairbanks “7 Days Microsleep,” billed as the first purely Tenori-On album released. If you aren’t familiar with the Tenori-On, Little Boots will demonstrate it’s capability on a cover of Hot Chip’s “Ready for the Floor.” You can’t buy this album. You have to download it from One American Second. Make sure to leave a tip!
Now get a notebook. A paper notebook, with pen or pencil. You can always punch your notes into your computer later; this is one of the few times I believe paper and pen are best. As you follow the procedure, write down exactly what you do and how you do it. This way if you have to backtrack, it will be much easier.
Log on to your hosting provider. I’m at Bluehost; I’ll be using their cPanel interface.
- Open your FTP client.
- Create subdirecory (wpblog); move all WordPress files there
- Log in to cPanel.
- Create subdomain using cPanel tools: blog.mydomain.com -> mydomain.com/wpblog
- Go into phpmyadmin, find the database, click on that, click on wp_options table, click on “Browse”, fix the paths field: mydomain.com -> blog.mydomain.com
- Go into wp-admin page, fix paths: mydomain.com -> blog.mydomain.com
- Optional Add the redirect using cPanel: mydomain.com -> blog.mydomain.com
That’s the fast and dirty, and it worked fine for me.
If you have enough traffic that you want to preserve your SERPs, you will need to add appropriate 301 redirections. I recommend using John Godley’s Redirection plugin for this chore, which makes it much easier.
Let me know if you have any trouble with this procedure. If the mere thought of this gives you the willies, drop me a line and we’ll talk about it.



