Servers are computers that host services. One type of server is a web server.  When developing a website, it is often handy to have a second web server on which you can test new ideas without causing the real website (the production site) to crash or have problems. This second server is called a ‘development’ server.

I recently finished setting up a development web server to host WordPress. I already had a development web server with a copy of my website’s static web pages at home.  I use this development web server to test out ideas for the layout and design of the InetDaemon.Com website. I also use the development server to test Server Side Includes and new Perl scripts without breaking the live website you’re currently reading in your web browser.

My ‘production’ website has hundreds of static web pages (the Tutorials), which are served by an Apache web server running on a UNIX based computer. The rest of my website is the blog, which is handled by WordPress, a PHP-based CGI application that dynamically loads content from a MySQL database and turns it into dynamic web pages. If the name of the web page you’re reading ends in .php, it’s a safe bet it’s being rendered by WordPress.

My development web server is a Microsoft IIS web server running on Windows XP, which makes it a very different platform from my live site.  Why did I choose IIS for the local server?  Simply for the challenge.  Since I already had IIS running, and I had also configured it to have a cgi-bin folder where I test out my Perl scripts I figured it wouldn’t be too much of a stretch to get a WordPress site up and running on it.  Getting my local IIS web server running was simple. Getting WordPress running took just a little extra work.

First, to run WordPress on a Microsoft IIS server, you must have IIS installed before you install anything else. Next I installed MySQL, a database server application. Next, I downloaded the latest version of PHP (the script engine that parses the PHP language that WordPress is written in). I installed PHP with ISAPI option for IIS and the MySQL extensions enabled. Finally, I downloaded the latest version of WordPress, copied it to the same folder location on my local webserver as it is on my public website and then ran the WordPress install.

That’s all it took.

Now I have a server at home that delivers exactly the same pages as the production InetDaemon.Com website, looks the same and feels the same when you browse it, but has IIS as the web server instead of Apache.

If I ever get around to writing up a more specific set of steps, I’ll post it online as a tutorial.