A computer program that is responsible for accepting HTTP requests from clients, which are known as web browsers, and serving them web pages, which are usually HTML documents.
Every web server program operates by accepting HTTP requests from the network, and providing an HTTP response to the requester. The HTTP response typically consists of an HTML document, but can also be a raw text file, an image, or some other type of document.
Usually web servers have also the capability of logging some detailed information, about client requests and server responses, to log files; this allows the Web master to collect statistics by running log analyzers on log files.
The origin of the content sent by server is called static if it comes from an existing file or dynamic if it is dynamically generated by some other program or script called by web server. Serving static content is usually much faster than serving dynamic content.