Home » Tools & Technology

How To Setup a Self-Hosted WordPress Blog

Submitted by No Comment | 1,740 views

In this article I like to summarize the steps and decisions I made during the setup of bSix12.com – my self-hosted WordPress blog. If you are going to install a self-hosted WordPress blog for the first time this information will save you a lot of time. If you are looking for a fast and easy way to start a blog this article is not for you. In this case check out WordPress.com, Blogger.com or TypePad.com where you can start blogging right away.

Why Self-Hosted?

If you need full control over all aspects of your blog including the database, themes and plugins you need a self-hosted blog.

Get Your Domain Name

First of all you will need a domain name for your blog. Use a tool like http://instantdomainsearch.com/ to check if your desired name is available.

Once you decided for a name, register it with a domain registrar of your choice. I am using GoDaddy. I recommend GoDaddy for the registration of domain names only not for hosting plans (see below). Search for “GoDaddy Coupons” to find coupon codes you can use to get discounts during registration.

Choose Your Hosting Provider

The important criteria’s to look for when choosing a hosting provider are reputation, performance, reliability, quality of customer support and cost. Be aware that many of the review’s you will find during your research are subjective and misleading… Next you need to decide whether to use a dedicated server or to run on a shared hosting account.

I spent quite some time to research this topic and finally settled with ANHosting. So far I am very happy with this choice. ANHosting has a reputation for providing very good performance to database centric applications like WordPress and Drupal. It is also one of the cheapest shared hosting accounts you can get. Their customer service is very responsive. ANHosting and midPhase are in fact one and the same company. You can look at ANHosting as a special hosting package provided by midPhase. The benefit is that you can start on a cheap ANHosting account – however if you outgrow your shared hosting account you can upgrade to a midPhase dedicated server easily.

The ANHosting package also includes a free domain name. I decided not use this option because I like to manage my domain names independently of the hosting provider.

Install WordPress

Most hosting packages include a tool called Fantastico to automate the installation of WordPress. This works pretty well. ANHosting includes Fantastico. However I decided to install WordPress on my own because I wanted to learn more about WordPress . The manual installation is pretty straight forward as well. You will find all information necessary to download and install the software on WordPress.org.

If you install WordPress for the first time it is a good idea to do a test installation on your own PC first. I’m using a tool called XAMPP-Lite for testing purposes. With this tool you can setup a test environment within minutes. Depending on your operating system there are different version available (Just search for XAMPP for Windows, XAMPP for Linux or XAMPP for Mac). If this sounds too complicated just stick with Fantastico :-)

To WWW or Not to WWW…

After installing WordPress you should decide which canonical URL format you like to use. Some people prefer www (e.g. http://www.yourdomain.com) , others prefer a the blank domain (e.g. http://yourdomain.com).  It doesn’t matter which option you choose. Decide for one and stick to it. You can control this settings under General Settings (look for WordPress address and Blog address).

I decided to go with the blank domain (which is the default option anyway) because it’s shorter. You can still use the www prefix in your browser – however you will get redirected to the blank domain.

Choose Your Permalink Structure

Carefully think about your permalink structure. You will find the permalink options under Settings/Permalinks. By default WordPress uses the post id which is not user friendlyl. I prefer meaningful URL’s which say something about the content. From my point of view the following three options are good choices:

  1. Month and post name: /%year%/%monthnum%/%postname%/
    (e.g. http://yourdomain.com/2009/03/sample-post/)
  2. Category and post name: /%category%/%postname%/
    (e.g. http://yourdomain.com/some-category/sample-post/) 
  3. Only post name: /%postname%/
    (e.g. http://yourdomain.com/sample-post/)

Month and post name is a good choice if you once published do not update your posts a lot. You can tell when a post has been published just by looking at it’s URL. However if you do update an older post with new information the URL might suggest outdated content…

RESTful Web Services by Leonard Richardson and Sam Ruby Category and post name is a good choice if you are pretty sure that your category names will never change. For a long time this was my favorite option because it represents an intuitive hierarchical navigation structure. With a special plugin which allows you to have a blank category base it would be possible to browser the namespace in an intuitive way. For example when you look at http://yourdomain.com/some-category/sample-post/ and delete the post name you would see a list of all posts in this category. The best book I know which discusses the importance of good URL design is RESTful Web Services by Leonard Richardson and Sam Ruby.

In my case I decided to go with a flat post name only structure. I don’t like to have the date in my URL because I will update older articles quite frequently. I decided against the category in the URL because I might want to change the category names in future. The option with the post name alone gives me the greatest degree of flexibility. Additionally I have full control over the post name (e.g. I could assign short and easy to memorize URL’s to important posts). Be aware that by choosing this option you share the same namespace with WordPress pages. If a page with the same name exists only the page is shown not the post!

Configure your Upload Directory

By default WordPress stores all your uploaded files under wp-content/uploads. The URL’s for your media files will have the following structure: http://yourdomain.com/wp-content/uploads/{year}/{month}/yourimage.jpg

I recommend using a separate sub-domain for your media files. For example: http://media.yourdomain.com or http://images.yourdomain.com . You can still store your media files on the same server however if you later decide to offload your images to another service provider it will be as straight forward as adding a new CNAME.

Perform the following two steps:

  1. Configure WordPress: Go to Settings/Miscellaneous Settings and  change the following settings:
    (optional) Store uploads in this folder: media
    Full URL path to files: http://media.yourdomain.com or http://images.yourdomain.com
  2. Create a new Sub-Domain: Create a new Sub-Domain with the name “media” or “images” in your CPANEL and point it to your media directory on the server. If you haven’t changed the media directory it will be wp-content/uploads otherwise it will be media or images.

From now on every time you upload a file it will be accessible via your media sub-domain.

Choose a WordPress Theme

Colorlabs Project - Premium WordPress Themes for You

There are tons of excellent free WordPress Themes available. Just go to WordPress.org, click on Extend in the menu bar and then click on Themes to get a good overview. If you are looking for a professional WordPress theme search for “Premium WordPress Themes”. The theme I’m using is a premium WordPress theme called arthemia premium. It is not for free but it is worth every penny.

Create a Backup Plan

A WordPress installation consists of two parts: The database and the WordPress files. In order to backup WordPress you need to backup the database as well as the WordPress files. Go to WordPress.org and search for “backup” to find detailed information on how to do that.

For short: I am using the WP-DB-Backup Plugin for the database backup and the SyncBack tool for the WordPress file backup.

Offload Your Feed via Feedburner

Sign up for a free Feedburner account. Freedburner provides many additional services like traffic analysis and email subscriptions to your feed. Additionally the feed will be delivered via Feedburner which reduces the load on your own server.

Some WordPress themes like arthemia premium provide Feedburner support out of the box. Otherwise you need to use a plugin called FeedSmith to redirect your feeds to Feedburner.

Install Plugins

I recommend the following additional plugins: Akismet, WP Super Cache, Simple Tags, Google XML Sitemaps and All in One SEO Pack.

Install Windows Live Writer

Windows Live Writer is an excellent free blog authoring tool. It works with many different blogging system not only WordPress. To use it with WordPress you need to enable XML-RPC under your Writing Settings.

Optionally you can disable the build in WordPress WYSIWYG editor to make sure it does not do funny things with your make up.  To to this go to your profile and activate the option Disable the visual editor when writing.

Related posts

Leave a comment!

Add your comment below, or trackback from your own site. You can also subscribe to these comments via RSS.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

This is a Gravatar-enabled weblog. To get your own globally-recognized-avatar, please register at Gravatar.