Is Windows hosting a bad idea for wp?

This is a partially subjective question, so it may get closed on that basis. Answer given here may be somewhat subjective but tries to cover the main considerations.

Short Answer

The short answer is you’ll definitely have a much easier life running WordPress on Linux. This is simply due to many more people hosting WordPress on Linux and the resulting huge amount of documentation, support and development effort that is purposely or just coincidentally specific to Linux. Linux will be much easier unless you have a lot more Windows server administration experience than Linux experience, or some other compelling reason such as you need to host a huge website and have free Windows hosting for some reason.

Long Anwer

This quesition is not inherent to Linux vs Windows, it’s specific to where WordPress and PHP are today and there are a few factors about why it’s like this:

  1. Server software implemtations of PHP and MySQL are basically equal.
  2. Linux being free and dominance of Unix on the internet lead to there being more Linux hosting, which leads to more web apps being written which may purposely or accidentally favour Linux
  3. Available documentation, resources for support and problem solving reflect disproportionate use of Linux

Server Software

Without considering the application you’re running, or if we considered a ‘perfectly written’ PHP and MySQL application, there should be little or no difference between Windows and Linux. PHP and MySQL are available for Windows and run PHP code and SQL databases exactly the same as on Linux, but the differences start when PHP or MySQL need to talk to the operating system. When it gets to this point the developer needs to make sure his code runs does the right thing in both cases.

Linux is free and open source software

Linux is FOSS and therefore web hosting companies have favoured it for providing web hosting. Linux (and Unix in general) took ‘market share’ as the server operating system for the Internet from the beginning, which means that applications of all types, including web applications written in PHP, get more exposure to that operating system.

A developer who has 90% of their users using PHP on Linux and 10% of their users using PHP on Windows may quite easily fail to check that operating-system calls in their code work as they expect on Windows. The less users some software has, and the less frequent specific OS users are, the less likely it is the developer will put effort into dealing with these less-common cases.

For WordPress, this means WordPress itself probably supports Windows well, but if you need a use a small or poorly written plugin you’re at much greater risk of it failing on Windows because the developer is much more likely to have developed it on Linux.

Documentation, Support

This big difference in server marketshare and therefore use of operating systems on the web means that there’s a similar distribution in the documentation and support. You’ll find many more people dealing with Linux hosting issues than Windows, and therefore much more content, questions and answers, and documentation.

Again, this will be skewed according to the size of the project: bigger projects will have time and resource to support Windows, smaller projects quite probably won’t.