When you are choosing your hosting company, you’ll be presented with a number of options. Your biggest choice: Linux or Windows?
If you are running a Windows-based PC, you might think that you should also choose a Windows-based server for your hosting needs. But that’s not true. Think of it in this way: If you’re driving a Volvo, you don’t have to buy gasoline only from Sweden — your car will run just fine on fuel from anywhere in the world. It might run better on premium than on regular, but the underlying geography doesn’t matter.
So it is with server operating systems. You don’t need to worry about matching your own computer’s operating system to that of the server. But just as your car runs better on one grade of gasoline than another, so does your WordPress website.
Your octane recommendation: Linux
WordPress was built to run on Linux servers using PHP and MySQL. Although a Windows server can be configured to run WordPress, it doesn’t run quite as smoothly.
The biggest problem with WordPress on a Windows server has to do with “pretty permalinks.” Take a look at the URL for this post:
http://wpbonbons.com/optimizing-wordpress/operating-system/
That’s a pretty permalink. It contains the name of the website, the category name, and the topic of the post. The URL alone tells you exactly what this post is about. There is nothing wasted; everything points directly to the subject. For search engine purposes, this is perfect.
Technical explanation: Skip this if you aren’t interested
When you change the permalink structure in your Dashboard, WordPress creates a file called “.htacess” that tells a Linux server how to display URLs in this fashion.
Windows servers cannot use .htaccess files because of their different structure. They use a file called IIS, which lives in a place that WordPress can’t reach. As a sort of workaround, Windows servers can use a different technique called PATHINFO that WordPress can access — but the final URL will include “index.php” and will look like this:
http://www.wpbonbons.com/index.php/optimizing-wordpress/operating-system/
That’s just not pretty. It also adds nine characters to an already long URL.
Ok, maybe that doesn’t bother you too much. But there is another problem that shows up on some (not all) Windows servers, depending on their configuration.
“www” vs “no www”
There are two ways to get to most websites. If you’re typing in the URL, you can type “www.sitename.com” or just “sitename.com” and they (should) both go to the same place. This, on a Linux server, is more of that .htaccess file magic.
On some Windows servers, the “www” shows up on the home page of the site but not on internal pages.
http://www.sitename.com/index.php
http://sitename.com/index.php/category/post-name
This confuses Google search, which wants your site to use either the”www” or the “non-www” version, please. Google may even see this as duplicate content and penalize your page ranking because of it.
File permissions
On Windows servers, it’s also difficult to set read-write permissions for individual files. (On Linux? CHMOD 755. Done.) If you need to edit theme files from your Dashboard, you may find that you are denied access and have no way to change that.
One more thing…
Some plugins just won’t work on Windows servers.
Bottom line: Choose Linux hosting for WordPress.
If you’re in the market for WordPress site hosting, we’re accepting new clients at 2FishWeb. (And yes, our servers run on Linux.)
Get in touch with us today.

