Wordpress and IIS are Buddies

I'll let you guess which one I think is the dog.

I have a hard time recommending a .Net blog engine that is comparable to WordPress in features, ease of use, cost and polish. Frequently I’m recommending to clients who have .Net sites that are looking add a blog to just add WordPress. This will usually require the .Net site has some complexities that aren’t easily transferable (i.e. It’s not just a corporate informational site with static content that is easily transferable to WordPress all together) and that you will have reasonable control over the server environment (no cheap shared hosting environments headaches).

I’m going to be attaching a blog to the APS Job Board which is a little project we are running to keep the people of Chicago (and the US) employed or employed with jobs they actually like. It’s built using the latest and greatest for Microsoft web development (SQL Server, MVC3, Razor layouts, etc.). I poked around looking for some good blogging open source goodness with aspNet MVC3 and the options just aren’t there or mature enough in my opinion. *cough* WebFunnel *cough*

A big benefit of doing it this way it to keep the traffic with your blog and your website integrated. You want to avoid having traffic for your blog on it’s own domain, or a subdomain (i.e. apsjobboardblog.com or blog.absjobboard.com).

One of the major drawbacks would be having to manage the design of the site in two independent code bases, although I think this is the case even with .Net blogging engine options. You will also need 2 developer skills sets if you are looking to do fancy, custom custom stuff with both sides of the application – or one good web firm like APS for instance!

If you didn’t know WordPress will actually run quite nicely on the MS Web Stack. You can even use MS SQL Server instead of MYSQL if you like – which makes the data more accessible to your .Net portions of the site. For the purposes of this tutorial we will be using Windows Server 2008, IIS7, and the MS Web Platform Installer.

Save yourself some pain, and just make sure you have no MySQL server instances previously installed, reboot and stop IIS. Then just simply select WordPress and install via the MS Web Platform Installer tool. It will install MySQL by default, and just go through the steps.

Now in IIS7 go to your .Net web site and create a virtual directory. You can call it whatever you want – but let’s call it “blog” because we like to use common sense here at APS. Set the home directory to your new WordPress website home directory.

Add a virtual directory for your WordPress blog

Just right click your web app and add a virtual directory. Point it to your new WP blog website root.

There is a final step to make the integration seamless and that is to set your WordPress address (URL) and Site address (URL) to your .Net application’s domain and blog path.

Viola! By the powers invested in me, I now pronounce your .Net website and WordPress blog bound in unholy matrimony.