Web servers are computer systems that serve up/deliver web pages in response to requests from remote browsers using software applications based on:
- the client/server model – a computational architecture that involves client processes requesting service from server processes, and
- the Hypertext Transfer Protocol (HTTP) - an application protocol which defines how files are transferred on the World Wide Web.
There are many web server software/applications available. Some of the more popular ones are:
Apache – a general purpose HTTP server from the Apache HTTP Server Project, which aimed to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows NT
Apache Tomcat – the servlet container used in the official Reference Implementation for the Java Servlet and JavaServer Pages (JSP); it is developed in an open environment and released under the Apache Software License; Tomcat 3.3.2 is for Servlet 2.2/JSP 1.1 technologies, Tomcat 4.1.30 for the 2.3/1.2 and Tomcat 5.0.19 for the 2.4/2.0, respectively
Microsoft’s Internet Information Server (IIS) – Web server from Microsoft that provides Web application infrastructure for Windows Server; its latest release is the IIS 6.0
Novell’s Web Server – is the Web server for users of Novell’s NetWare operating system; the latest release is the NetWare Enterprise Web Server, bundled with NetWare 6
IBM’s family of Lotus Domino servers – primarily for IBM’s OS/390 and AS/400 customers; the latest version is IBM Lotus Domino 6.5
MacHTTP – the original server for Macintosh; the latest version is MacHTTP 2.6
The w3 site lists other web servers available.
These applications often come as part of larger packages of Internet- and intranet-related programs for serving email, downloading File Transfer Protocol (FTP) files, and building and publishing Web pages. They differ mostly in ‘server-side’ features such as server-side includes, authentication and access control mechanisms, CGI support and API.
There are many factors to consider when choosing a Web server. These include:
If you want to know more about how a web server works, the following readings might be interesting: