The simple truth is….
What you may be told may differ… most likely either “Why would you want to do that?” or the usual “yeaaaa….. but linux is better”.
There is nothing wrong with WordPress on Windows and here’s why
This is my opinion on the matter and my experience with running WordPress installs on Windows using IIS like this blog. I’ve never felt the need to move a WordPress website from Windows to Linux, and I’ve never been required by some plugin or software. PHP is cross platform, what plugins and external components it talks to is where incompatibilities come in and typically this isn’t an issue for WordPress.
We won’t be discussing Apache on Windows as I feel this isn’t a standard set up for most hosts but feel free to comment if this interests you.
First why would you want to run WordPress on Windows Hosting?
Easy, you might already have Windows hosting or you are a Windows developer. There could be a lot of reasons and it’s also very common to see PHP developers using Windows desktops for development and testing.
You might have a site that has a mix of technologies that requires a Windows host.
You have your main website programmed in ASP.NET but want to use WordPress as your blogging platform.
As you can see there are plenty of reasons and it is the general assumption that if you want to host WordPress you get Linux hosting. There is nothing wrong with this but you do miss out on some of the advantages, some I discussed on the Top 7 Reasons Windows Hosting Rocks blog post.
Are you more familiar or have more knowledge with Windows Server and IIS because this is also a good reason to choose Windows hosting. While I do know Linux I am more comfortable with Windows and to me that means I understand how changes will affect the system as a whole. This is more so important if you are running a VPS or Dedicated server. On shared hosting you shouldn’t have to worry about the underlying OS configuration, you can just focus on your website application and the content.
And finally some do it because they can, just like a lot of things in life people like to go against the norm or try something different. No harm in doing that and it is a great way to learn.
So now we have that out of the way let’s move on to…. objections.
Here are some common objections I’ve seen around and how I would refute them where suitable.
You will have issues with permissions
I’ve certainly heard and read this before and you know what, this is an issue for any system, Linux or Windows if you try and set it up yourself. Most of the time this is a comparison of a home user trying to configure IIS and PHP on their Windows 7+ desktop vs uploading it to a shared linux host. This is not a great comparison as most of the issues you would encounter on a local desktop wouldn’t be on either Windows WordPress hosting or Linux WordPress hosting.
Bottom line, if you try and set it up yourself without a decent understanding of permissions you may have some issues but any competent Windows admin would be able to resolve it within a few minutes just like I would expect on Linux with the same issue.
Don’t believe me? Do a quick google for “Apache website permissions”
PHP and WordPress plugins are made for Linux
Making a plugin work for Linux compared to Windows will generally be easy, there will be exceptions and for most of the big plugins where this could have been an issue they have accommodated for Windows servers and how IIS handles configuration vs the .htaccess on most web servers.
There will be cases where a specific plugin may not function on IIS, theses will be few and far between from what I’ve found using quality plugins.
PHP’s own plugins used by web apps are normally available for the Windows PHP versions or can be compiled and added to PHP so most extensions are compatible.
Uploading doesn’t work properly
Again this is a configuration issue and technically this could be an issue on Linux too depending on the setup. This is normally a max request limit (amount of data being sent to the server), a timeout issue or a permissions issue.
Most Windows WordPress hosts will already have configured their system to handle most files.
But I already have Linux / CPanel Hosting….
Yep if you already have Linux hosting it may be an easier option to stay with what you have, this is more about not avoiding Windows if you are already using the ecosystem.
Support isn’t as good
I will admit, Linux generally is easier as it has a bigger community meaning more support. Asking questions about WordPress on Windows or IIS will usually either not get many responses or in some cases get answers for Linux that aren’t helpful at all. When you run the standard you will normally get more help.
If configured well a WordPress install on a IIS will appear just like Linux. I’m not sure on other hosts but typically I’ve seen better ratios on Windows shared hosting than on linux.
There’s probably two main reasons for this, one is how application pools run on IIS, setting a different expectation on ratios and two is CloudLinux, for all the great it does and I wish there was a Windows equivalent it can encourage harsher limits on your space (less burst speed) and higher ratios. Now this isn’t to say that every shared host is doing this but website speed very rarely has anything to do with the OS it is running on, it’s always based on the resources available to process the incoming request. The more resources available the better, so getting a good host that keeps their servers within good ratio’s/performance levels is more important.
What it does come down to, is your skill level and understanding of hosting, WordPress and PHP.
Have questions or having issues regarding WordPress or other PHP sites on Windows and IIS? Get in touch with us and we’ll see what we can do to help.
Did you encounter any of the issues above and if so how did you overcome them? Did you give up or change to Linux?
Let us know in the comments below.
Update for 2022: Even with how hosting, WordPress and web tech has changed over the last few years the article still holds mostly true. The whole article was about being able to host on Windows and not being afraid of a slightly different configuration. With the ease of deployments now with docker and other technologies is likely not as big of an issue as it once was making the need for this less likely now.
While we do host and support some WordPress sites on Windows and IIS the overwhelming majority are on our cPanel servers (this is what people are used to) and supporting quite a few sites on WordPress specifics hosts like Kinsta/WPEngine.