A web server is typically a combination of both hardware and software. The hardware in this case is the computer which hosts the requisite software alongside the web server software like Apache. The web server software will then enable rendering of the website component files like HTML, CSS, JavaScript and PHP since it supports the actual physical data interchange between the server and other devices connected to it for instance via the HTTP protocol. Apache software establishes a connection between the server hosting it and the internet browsers of website visitors like Firefox, Google Chrome, Safari, Opera etc,  while delivering requested  files back and forth between the client browser and the server. 

Apache is one very popular open-source  web server software that is freely available and is distributed under an open source license. Apache server software is cross-platform such that it can run on several operating systems like Linux and Windows.