Compare 'Platforms' Web Hosting at WhoIsHostingThis.com
Hosting Platforms: Web Server and OS Options
Many web hosting companies advertise a lot of applications that don’t really matter from a buying perspective. They either don’t matter because you will never need them (like bad web page builders) or because they are so common that everyone supports it (like WordPress). For this reason, it’s best to ignore most of the features listed in the marketing material of a web hosting plan — especially the software and apps listed.
However, the one area where software really matters is the web hosting platform itself.
You should be able to install your own applications, but you need a solid base from which to work — that means an Operating System and a Web Server that will work with the apps you plan to use.
A web server is a software application that receives requests from the internet and then communicates them to the operating system and other applications, and then responds to those requests. It is the primary interface between a computer (server) and the rest of the world (the internet).
- Apache — The most commonly used webserver. It is free and open source and works very well with Linux and other common web technologies. Many web development and web application help guides assume you are using Apache. It is the “A” in “LAMP stack” (Linux — Apache — MySQL — PHP)
- Other web servers include: LiteSpeed, Nginx, Tomcat JSP and IIS
The Operating System is the most fundamental piece of software on a server. It provides an interface between the applications and the hardware. It is the foundation of the entire computing system.
Server vs. Local Operating Systems
It is not important that your server’s operating system matches the operating system on your desktop or local machine. In some cases, it can be mildly helpful from the standpoint of providing a little more familiarity, but there are usually no solid technical reasons to be concerned about this.
The one possible exception to this might be new web development — brand new applications — where you need a local environment that matches the production environment. This can be helpful, but isn’t absolutely required. Many developers work locally on a Mac and then deploy to Linux servers.
Moreover, even if you decide to use Linux in both places, you may not want to use the same distribution of Linux on your desktop as is being used on the server. This is because server distros and desktop distros have different needs.
Unix-based Operating Systems
The majority of operating system installations in the world are Unix-like. This means they are either descended from, or inspired by, the original Unix operating system.
These OSes are particularly well-suited to web hosting because they don’t tend to need rebooting on a regular basis, and they have a good separation of user permissions and root access. Because Unix and its derivatives have been so connected with software development culture, especially on the web, there are a lot more tools and applications for this family of Operating Systems as compared with other options. Even better, many of these fundamental tools are Open Source, as are many operating systems within this group.
BSDs — Berkeley Software Distribution — This was a Unix-based operating system developed at UC Berkeley in the 1970s through the 1990s. It is no longer under development, but it spawned a number of descendant projects based on it, including:
Mac OSX — The operating system on Mac laptops and desktops is based on BSD. It maintains certification with the Open Group, making it officially not just Unix-like, but a full fledged UNIX operating system. OSX is primarily used for desktop computing, and has not gained much traction on servers.
OpenBSD — This is a Unix-like operating system developed and used by a fairly small, but dedicated and highly-skilled community. It has a near-fanatical focus on security and “code correctness,” which has made it attractive for web security and encryption purposes. It is frequently used for firewalls and mail servers.
Linux — Linux is a Unix-like family of Operating Systems based on the Linux kernal developed originally by Linus Torvalds. It is based on Unix, but did not reuse any of the original closed-source code. It is fully Open Source. This, along with its technical suitability, has made it extremely popular for use on server hardware and other “big metal” systems.
Linux is available in many distributions, each one packaging the kernal with a different set of additional features and UI elements.
Windows, which has traditionally dominated the desktop operating system industry, especially in business and office applications, also provides server operating systems. Unlike Linux (but just like Windows desktop) the Windows Server operating system is proprietary, and must be purchased or licensed (it isn’t free).
Why Windows server isn't typically used for web applications
First, price is an important factor. Most computer owners are willing to pay for the intuitive user interface of Windows on their home PCs, particularly because it allows them to run the same software they use at work. Linux simply can’t provide this same experience for desktop users.
Web users, on the other hand, get the same experience whether you host your site on Windows, Linux, or BSD, or a Max OS. Since most popular web applications run on Linux or Windows, the obvious choice for website owners is the free one.
The second reason is that Unix, and consequently Linux, was built for modularity, multiple users, and clock-based time sharing, attributes that make it the ideal operation system for web applications, where hundreds, thousands, and sometimes even millions of users are accessing your website at the same time. This isn’t to say a Windows server can’t handle the demands of the modern Internet, but that Linux servers were more specifically designed for it.
Hosting Platform FAQs
If I go with an open source OS, will I still be able to get quality support?
This is one of the great arguments in the Linux vs. Windows debate (as well as the Red Hat vs. open source Linux debate), and there’s no easy answer.
With a commercial operating system, such as Windows Server or Red Hat, you will receive a higher level of support from the software maker, because you’re paying for it. Open source software makers simply can’t offer that same level of support, because giving software away for free doesn’t leave much money left over for a large support staff.
But that doesn’t mean there isn’t plenty of support to be had, both for free via the often enormous user community, and for a fee, either directly through the OS maker or through their networks of certified professionals. As long as you’re using a server that is still being actively developed, and isn’t a small niche product, there is plenty of support available.
How does Apache compare to Litepeed?
Litespeed is a commercial webserver, meaning to get the full product you will have to pay a licensing fee. There is a free version available, but it offers limited features. Litespeed is a lightweight alternative to Apache, claiming to be able to handle twice the server traffic as Apache.
It’s able to do this because it uses an event-driven approach to handling requests (Apache uses a process-oriented approach), making it more scalable, and capable of handling very high load or spikes. Because it can handle Apache configuration files, it can replace an existing Apache server in minutes.
Being closed source, Litespeed claims to be more secure than Apache, but this is highly debated, and most professionals agree that Apache is the more secure server. Apache is a more trusted, reliable server, and offers considerably more flexibility, including the ability to add customized components. Because Apache is the most popular web server in the world, there is also an enormous support system available.
How does Tomcat JSP compare to Apache?
While technically alternative server options, Tomcat JSP (or just Tomcat) is built upon Apache server. It is an open source web server and servlet container which implements several Java EE specifications.
This allows a developer to deploy JavaServer Pages (JSP), which is similar to PHP, in that it is used to include dynamic content within HTML and XML pages, but is based on Java. If you plan on developing Java-based dynamic web pages, Tomcat is a free alternative to running the entire Java applet, while still providing a pure Java environment.
The real difference between Tomcat and other web servers is that Tomcat has a very specific intention, developing Java-based dynamic content. That means you won’t find many hosts specifically catering to Tomcat developers; on the other hand, most hosts offer plans that can support Tomcat, it will just require more work to set up, and it is possible to find some specialized hosts that offer it pre-installed.
How does Apache compare to IIS?
Apache is an open source web server, so it’s free to install. IIS is commercial software, so even if it is included with your server package, you are paying extra to use it. Apache can be run on nearly any operation system, including BSD, Linux, and Windows; whereas, IIS can only be run on Windows Servers.
Because the source code is free to edit, Apache is an extremely flexible web server and can be customized for any system or task. IIS, on the other hand, is proprietary software, so you cannot adjust the underlying code in any way.
In terms of security, there are some who will argue that Apache offers great security, as most malicious software has historically been written for Windows, but that argument is quickly losing weight, particularly in the era of web apps and mobile devices.
However, Apache is still a highly secure application, and being open source it has a nearly endless team of contributors ready to tackle security issues. IIS, on the other hand, has the advantage of a dedicated team of highly-paid, specialized programmers regularly testing its code, along with the fact that it’s code is not publicly available.
Until very recently, IIS was the only option available for running .NET framework and ASPX scripts. This is changing, as Microsoft has recently released this code to the open source community. Despite this, Windows Server still remains the best option for running .NET and ASPX, as well as being the best option for running a business server for companies that rely on Microsoft Office.
In terms of support, as with any commercial software, you can expect to receive more dedicated support with IIS; however, the Apache support community is very large, and there are plenty of commercial support options available for an additional cost.