To begin with, the term “Web server” as used in this introducing article as well as on the whole site is defined. Strictly speaking a Web server is a special computer program which delivers and serves content. It concerns content, such as Web pages, that use the so-called Hypertext Transfer Protocol (HTTP) over the whole World Wide Web. Furthermore it has to be mentioned that the term “Web server” can also mean the respective computer or virtual machine running the computer program. Besides, it turns out to be possible, especially in huge and commercial deployments, that a server computer running a Web server can be rack-mounted within a single server rack or cabinet together with a series of other servers. Consequently this procedure enables operating a whole Web farm.
Regarding the term “client” it has to be said that a client represents commonly a Web browser or Web crawler. Its ‘job’ consists in initiating communication by means of making a request for a special resource using the Hypertext Transfer Protocol (HTTP). Consequently the Web server responds either with the content of the respective resource or with an error message in the event of the Web server being unable to do so. The resource is actually a real file located on the Web server’s secondary memory. However, this depends on how the respective Web server is implemented.
As already mentioned the primary function of a Web server consists in serving and delivering content. So an entire implementation of the Hypertext Transfer Protocol (HTTP) also includes the possibility concerning the receipt of content from clients. This a special feature especially used for the submission of several Web forms, also including the upload of files.
There exists also a series of so-called generic Web servers such as for instance Apache HTTP Server and PHP that support server-side scripting. This simply means that the procedure of the Web server’s ‘working’ can easily be scripted in separate files. In doing so the actual Web server does not get changed. This feature or functionality gets often used when it comes to creating HTML documents on-the-fly.
Please mind that there are also so-called “niched Web servers” which can be found in special devices like routers or printers. Their focus is based on the easing of a Web server’s administration by using a familiar user interface in the simply form of a Web page.