I think it is fair to say that the web server market is owned by Apache, nginx and IIS. That may be over-simplifying slightly but according to the latest W3Techs survey, those three platforms represent about 95% of the overall industry.
Here is the market share by browser since 2010. As of January 2010, Nginx had low single digit market share and has grown by about tenfold in about 7 1/4 years.
That is astounding growth but there is more to the story. When you look at top 100,000 sites, Nginx actually has over 50% market share.
Apache is found on many smaller sites and older sites as it was a popular choice for automating web server installations for years by those companies offering shared hosting.
STH started in 2009 on Apache and transitioned to nginx on the left side of the timeline chart.
I asked Patrick our Editor-in-Chief about what STH is using:
“We have been on nginx for almost five years now. We talked about the decision a bit in our Falling From the Sky: Why STH is Leaving the Cloud series in 2012. The largest issue we had was that, at the time, we were having issues with WordPress single threaded performance on Apache. Since we transitioned to nginx, that is not an issue in the slightest.
In 2017 using nginx over Apache may sound like a very reasonable choice if not the default choice. In 2012 it was much different. We seriously evaluated LiteSpeed a few years ago as that was getting a lot of buzz. In the end, I think we made the right decision using nginx.”
We are also impressed that 68 of the top 1000 sites are using IIS as that has been in decline for years. With today’s market share, it is easy to see nginx and Apache as the go-to choices.
what makes nginx so good? or apache so bad?
“In 2017 using nginx over Apache may sound like a very reasonable choice if not the default choice. In 2017 it was much different. ” — the second date should probably be fixed.
Nginx configuration syntax is a lot clearer in my opinion, the performance is also better.
To elaborate on what Nils said. Apache has these weird html style ‘directives’ intermixed with key value
lines and lots of module loadlines. While nginx’s config are short texts with hierarchial variable assignments in simple C/Java-like codeblocks.