10 Reasons Why Not to Host Your WordPress Blog on a Windows/IIS Platform

I’m sitting here on the phone with iPower,  my web hosting company, who has been going through a lot of changes lately.  Since I have been on hold for 45 minutes now, I have decided to write a post about

“10 Reasons Why Not to Host Your WordPress Blog on a Windows/IIS Platform”.

I will, for now, reserve comment on my web hosting company since they have dominion over my content.  Instead, I will focus on the fact that many of the problems I have dealt with have not only been my web hosting company, but the fact that my site is hosted on the Windows/IIS Platform.  I frequently here “we don’t have these problems on our Linux/Apache platform.”

So, without further ado, here are the 10 reasons not to host your WordPress Blog on a Windows/IIS Platform.

NOTE: In the end, I switched to Web Hosting at HostGator which has saved me money and had 100% availability for the last two years. Richard, January 2011

One:  The “Upload Image” feature does not work by default

I might as well start with this one since it is the one that I am on the phone about.  I just said to the iPower second level support, who claimed that they did not know the solution for this and that my situation was unique, “You mean to tell me that of your 800,000 customers that I am the only one who has WordPress installed on the Windows/IIS platform?”

I opened this ticket 20 days ago and they have not contacted me once in that time.  I’ve contacted them 7 times.  I have just pointed them to three blog entries that address exactly this issue: IIS permissions for uploading, WordPress File Uploads With IIS, and Installing WordPress on IIS 6.

I have probably lost the better part of 15 hours (10 of them on hold) on this simple issue…that’s still not resolved.

(Update:  You won’t believe what happened with this ticket.  See footnote below!)

Two:  Bad Permalinks

If you look at the address bar on this page, it comes in this form:

http://arichidea.com/index.php/2008/04/10-reasons-why-not-to-host-your-wordpress-blog-on-a-windowsiis-platform/

Several SEO recommendations mention to keep the permalink name as short as possible.  With my obscenely long domain name :), that might not be possible.  But, at least, I did not want to have the unnecessary “index.php” there.  Yet it is because this is an IIS server and does not support something called mod-rewrite.  You need to use 3rd party tools on your Windows server.  And since this involved modifications by my web host company, I know that it is not possible right now.

I will live forever with “index.php” as part of my permalink structure.

If you’re so inclined, you can read more about this issue here.

Three:  Permissions are ALWAYS a problem.

The need often arises to modify your theme files.  I am unable to do this within the WordPress Admin console because it requires changing the server permissions…and then we get back to my non-responsive web hosting company.

When you look up these types of problems on the Internet, you’ll constantly find people who say that using CHMOD (a UNIX permission changer) fixed their problem.  This is the fix on a non-Windows platform.  Windows uses another Windows-y security level that prevents this from working.

You will see constant rejection notices in this form:

Warning: fopen(\\wserver\home\users\web\b500\ipw.webname\blog/wp-content/themes/join/join2/author.php) [function.fopen]: failed to open stream: Permission denied in \\wserver\home\users\web\b500\ipw.webname\blog\wp-admin\theme-editor.php on line 44

The syntax you see above in this form ” file://wserver/home…” is called a UNC (Universal Naming Convention) path which is Microsoft centric.  No UNIX people care about this and nobody on the other end of your support call knows anything about a UNC path.

This warning might as well just say, “Sorry dude, you’re on a Microsoft Server, we can’t help you!”

Four:  My 5-Minute Install Took 7 days

WordPress has a document called The Five Minute Install.  Mine took a week.  Again, this was a combination of being with my hosting provider who was going through changes and the fact that, “well, you ARE on the Windows platform”.

You can read more about this in my article:  Ten Things Every New Blogger Must Know

Five:  After Installation, WordPress Did Not Work

After the 7 days to get WordPress installed, none of the links to the pages worked.  Again, this was a Windows/IIS problem producing some sort of CGI error.

Having worked in the technology field for many years, I was able to research and find a solution to this problem (you can find it on WordPress entitled CGI Error With Pages).

But do you really want to suffer through all of this?

Six:  You’re Left With No Confidence

So many features DO work immediately on a Linux/Apache install and DON”T on Windows/IIS.  Then, you’re stuck contacting your web-hosting provider…and mine will never answer me back!

Seven:  Several Plug-ins Won’t Work As Advertised

This is often due to the permissions problem mentioned above.  In particular, Gregarious did not fully work, the caching plug-in didn’t work, the backup plug-in had difficulties, and none of the photo plug-ins work because they all use the image upload feature.  Refer to problem #1.

Eight:  WordPress Uses Mysql and Php as It’s Foundation.

These are not Microsoft tools.  Microsoft prefers that you use SQL Server and ASP.  Mysql and Php are not designed for Windows/IIS and, thus, do not perform as well in that environment.

Nine:  Many Internet People Hate Microsoft

I know that this does not seem like a technical issue but it is.  All of the support people out there (especially in WordPress land) are Unix/Linux people.  They seem to despise Microsoft.  Every mention of Microsoft is met with a grimace, sneer, or snide remark.

Ten:  Listen to Coyote

WordPress on Windows/IIS just causes to much grief.

If you won’t listen to me, listen to c0y0te in this WordPress post:

If I was to setup a new site tomorrow I would certainly NOT use windows/IIS. I’d go with Linux/Apache to avoid the grief.

Summary:

If you are just starting a WordPress blog, and choosing a web hosting provider, make sure that you choose the Linux/Apache platform and NOT the Windows/IIS platform.

If you are a web hosting provider, and you still want to provide WordPress on Windows/IIS platform as an option, these sites below all seem to give very good instruction (listen up iPower).

Now, back to being on hold with my web hosting company…at least they are playing some groovy music!

How to Properly Install  WordPress in a Windows/IIS Environment:

And avoid most of the problems mentioned above!

Anybody else had similar experiences with WordPress in the Windows/IIS environment?  Share them in the comments below:

Footnote to this story:  I began this story while I was on hold with iPower.  I was withholding comments on their service and trying to focus on the Windows/IIS issue.  However, this cannot go unsaid.  In trying to fix my image upload problem, they broke all of my permalinks.  Yes, all of them.  This meant that not one internal or external link worked.  I wrote about it here on WordPress.org.  But, the reality is…if I was not on the Windows/IIS platform, I would never have had to deal with this issue in the first place.

After this debacle, I switched my plan over to Web Hosting at HostGator on their standard Linux platform which saved me money and gave me 100% uptime! I love HostGator!

Richard10 Reasons Why Not to Host Your WordPress Blog on a Windows/IIS Platform

Comments 28

  1. Basil Vandegriend

    Thanks for the link to my article. As you can guess, I am running WordPress on top of IIS, but at least with mod_rewrite capabilities. While it does work for me, I do agree that you are much better off under Apache. If I had to do it again, I’d choose an ISP that used Apache rather than IIS.

  2. Chris

    This seems more like a post with 10 reasons why your hosting provider sucks and wont give you adequate support. I’m running WordPress on IIS on an internally hosted server and sure it takes some fiddling but it works just fine.

  3. Richard

    Chris, very good point.

    If my provider would have set it up correctly from the get go, I would not have had many of these problems.

    However, by not using IIS/Windows as a WordPress host, you do not have to fiddle to make it work and thus there is much less room for error.

  4. Chip

    Um … strike me if I’m wrong, but most of iPowerWeb’s hosting is on *nix platform, and you have to specifically sign-up for or request Windows hosting. I just signed-up with them recently (after many years of neglecting to do so for other host’s I’m “friendly” with), and I was automatically put on a *nix platform for hosting (Pro plan). Changing my permalink structure works automatically for me!!! (Just did it a few minutes ago from the WordPress admin panel.)

    1.) Valid Gripe
    2.) Valid Gripe
    3.) Valid Gripe
    4.) Are you kidding? I’ve always been able to get WP to install & work on an M$ platform in 5 minutes or less (all things considered, the servers are configured correctly).
    5.) Wrap it up with number 4; invalid complaint for a round number (10).
    6.) Somewhat true; but not unexpected (if you think and plan ahead like any experienced webmaster, web host and programmer does).
    7.) DUH! You’re working with M$ … nothing works as expected, you’re always going to have complaints.
    8.) DUH! (Again.)
    9.) Invalid complaint. Many people could say the same about their experiences with *nix platforms.
    10.) What if you listened to Steve Ballmer?

    ’nuff said.

  5. Justin Elam

    I am using wordpress on a windows/IIS setup. However, i host it myself through the use of DynDNS.Com. this way its my box, i am in full control (as much as windows lets you be) over settings and the like. Getting MySQL setup was a bit of a task as it was the first time i had even heard of it much less tried to use it. But i still managed to get my wordpress up and fully functional from the time i started downloading the various setup files (WordPress, MySQL, and PHP) to users logging in was 2 hours.

    If you ISP is so bad, maybe you should host your own with DynDNS. its free.

  6. Post
    Author
    Richard

    MP, yes, I switched to Fushed network in the beginning of June so I have had about 3 months of experience with them.

    I will write about my experience with them at some point but I can tell you that thus far I have been extremely satisfied.

    I have scarcely had any issues and the couple that I had in the beginning were responded to quickly and properly.

  7. Post
    Author
    Richard

    A quick note from the author on some of the comments above…all of which are appreciated.

    –A few comments indicate that the problem may have been my ISP and not WordPress running on top of Windows. Certainly, it was both. I think that we would all agree that WordPress on Windows/IIS requires much more tweaking. Which is fine…if you’re a good tweaker, which my host iPower was not.

    –Chip comments that iPower defaults to setting you up on the *nix platform. I believe this is true but several years before I was a WordPress user, I was using all Microsoft stuff (Frontpage, .asp) and thus requested a Windows platform. I cannot comment on iPower with *nix but, if you do run into problems with iPower, expect to be on the phone for awhile! Also, in regards to # 4 & 5, they are legitimate gripes because of iPower (they did not even know the value to put in for dbhost!).

    And, of course, iPower kept saying, “We don’t have any of these problems on the non-Windows” platform.

    Bottom Line: WordPress runs on Windows but requires significant tweaking. Why bother?

    I only know that I am so much happier now that I’m off iPower, off Windows. My experience with Fuse has been great!

    Thanks,
    Richard

  8. JonB

    Hi Richard

    An interesting thread. The comments about running stuff developed on a LAMP stack on W2K3 are generally true across the board. I deal a lot with Yabb and the issues are really basically the same. (I have 2 WordPress installs humming along nicely on a W2k3/IIS6 box – BUT its mine and I’m a former MCSE) LOL and a bunch of other stuff that was never designed to run that way…

    I think the root problem is two-fold.

    ONE – people don’t qualify their hosting companies they just sign up with the cheapest package that says it will fit. Can you say BAD IDEA? I have always believed in going to the User Forums of software packages as the very first step in making decisions. Nobody on MY box type – maybe bad idea, complaints about Hosts – good place to weed them out. I send an e-mail and ask for a reference account. If they ask you to explain the app, time to move on. Just me…

    TWO – Hosting companies that run *nix but ‘offer Windows’ too, tend to be staffed by penguin heads :-) – Hey I love Tuxedos! – who know little to nothing about IIS and NTFS. All you have to do is look at how Plesk is designed to know its a GRAFT of FTP/CPANEL/APACHE onto a Windows platform. (most hybrids are sterile for good reasons – they are unnatural!). Imagine having shared public_HTML folders on an IIS box and a tool that tells you its CHMOD – can you say designed for ease of support by people unfamiliar with IIS? If you must go with a Windows Host for a good reason – get a Windows only host and YOU will need to research the app first, AND e-mail them nicely and ask if they have any other wierdos like you, LOL. You never know!

    I guess I can for sure say I agree with you on the ‘put it on the box it belongs on’ in the Hosted scenario unless you have a compelling reason to do otherwise.

    Thanks for an Interesting Thread.

    :-)

  9. Coitagoca

    There are 5 houses in five different colors
    In each house lives a different nationality.
    These 5 owners drink a certain beverage, smoke a certain brand of cigar and keep a certain pet.
    No owners have the same pet, smoke the same brand of cigar, or drink the same beverage.

    The CLUES:

    The Brit lives in the Red house.
    The Swede keeps dogs as pets.
    The Dane Drinks tea.
    The Green House is on the left of the White House.
    The Green House’s owner drinks coffee.
    The person who smokes Pall Mall rears birds.
    The owner of the yellow house smokes Dunhill.
    The man in the center house drinks milk.
    The Norwegian lives in the first house.
    The man who smokes Blends lives next to the one who keeps cats
    The man who keeps horses lives next to the man who smokes Dunhill.
    The man who smokes Blue Master drinks beer.
    The German smokes Prince.
    The Norwegian lives next to the Blue House.
    The man who smokes Blends has a neighbor who drinks water.
    The QUESTION:

    Who owns the fish?

  10. sherm

    Hi there,

    Just wanted to say thanks for this post; I was searching for answers as to why I was having so many problems with installing WordPress for my boss’ website; hosting technical support wasn’t much help either…it turns out he chose Windows hosting.

    I’m not as technical as you but I experienced the problems you listed; upload feature not working, permission problems, pages not working…I learned the hard way and am trying to switch over to Linux.

    Thanks for the insight!

  11. Wamp

    Why use IIS on Windows for WordPress? Apache RUNS on Windows. That said to use WAMP instead of LAMP, there is no reason to use WIMP. I never tried WordPress on a WIMP , but tried it on a WAMP and works just great.

    I am using xampp for windows:
    http://www.apachefriends.org/en/xampp-windows.html

    Everything should work fine as the important applicatons that need to interact for the WordPress to run fine is the AMP (Apache MySQL PHP). And because they both work on Linux and Windows, they show no problems.

    Though, some plugins use Unix commands, but that’s their mistake, they should make their code application oriented and make no use of OS commands.

    The only thing I am having trouble with is improving the site security with tying up file/folder access permissions. I couldn’t know how to transform CHMOD permissions to Windows. There are three accounts that should have their permissions set: Owner, Local and Internet. I know how to transform the CHMOD value to the 3 accounts but I couldn’t know which user accounts in Windows do these represent. Do you know them? :)

  12. Gaurav Malik

    Hi Richard,

    Nice article and I agree with you most points. While some issues are with the hosting provider others are to do with IIS.

    I had the same problems with WordPress installed with Plesk. Some of the not so obvious changes are to ensure PHP runs as an ISAPI application, enabling SSI. Your use of permalinks solved one of the issues.

    Matters are made even worse when you develop on a local machine and then upload to a production server.

    Regards,

    Gaurav

  13. Melissa

    As well as the permalinks issue my other major gripe with hosting wordpress on windows is not being able to run automatic update.

  14. Anil

    Thank u very much…today i new properly why photos were not uploading in my blog. just wish now…..if i had read this article before taking hosting plan..

  15. Mark Brown

    I don’t know why this guy @nchwebdesign Tweeted your three year old blog post yesterday :) but in any case we’re working hard to make WordPress on Windows and IIS better including an IDE to customize and work with your WordPress site called WebMatrix and we’re working with a bunch of hosting partners that actually know how to run WordPress on Windows and IIS.

    Anybody can check it out here. http://microsoft.com/web/wordpress

    Mark Brown
    Microsoft
    Web Platform Team

  16. Pingback: Speeding Up Your WordPress Website: 11 Ways to Improve Your Load Time | WordPress News at WPMU.org

  17. Guy Merritt

    I’ve run a Linux server, for years, and recently I’ve been experimenting with IIS 6 and 7. I’ve had mixed results with WordPress on IIS and I would definately agree that, if you’re not hosting your own site, it makes very little sense to choose a Microsoft platform for hosting something as inherently “*Nix friendly” as WordPress. Now, I will say this: as a Linux fanatic – to my absolute amazement – I’ve been pretty damned impressed with Microsoft’s server products. WordPress runs perfectly – for me, at least – on IIS 6. On IIS 7 I’ve got one hink with the drop-down “format” menu. It appears to add code to the database but the it’s not being read. The visual display does not reflect the code change. Why? I have no idea. Everything else works perfectly. Without going through your list, point by point, I would say that the biggest problem you would run into with WordPress on a MS server would be permissions – and that’s a pretty big deal. As far as setting up WordPress, because I am doing it locally I’ve set up WordPress on IIS in 10 minutes.

    In a nutshell: Microsoft stuff has a lot to offer, in terms of groupware and that sort of thing, but it doesn’t make a lot of sense to choose an MS server for WordPress unless, well, there is no alternative. On the flip side, I haven’t found it to be quite the nightmare you’ve described – at all. Then again, I’m sitting at the computer from which it’s running (where I can tinker with permissions). I don’t know how that would be done, remotely, on a Windows server.

    And it sounds as if you happened to choose a very sub-par web host.

  18. Post
    Author
    Richard

    Kevin, thanks for the comment. I am actually highly experienced with Windows, from both the client and the server side. However, many webhosts are not and they are the ones who set these things up. As I said in the footnote, when I switched over to a Linux setup, everything just worked (without any support calls) and that was most important for me.

Leave a Reply

Your email address will not be published. Required fields are marked *