This article needs additional citations for verification. (March 2009) (Learn how and when to remove this template message)
A web server is server software, or a system of one or more computers dedicated to running this software, that can satisfy client HTTP requests on the public World Wide Web or also on private LANs and WANs.
A web server usually receives incoming network HTTP requests and sends outgoing HTTP responses (one for each processed request), along with web contents, through transparent and / or encrypted TCP/IP connections (See also: HTTPS) which are started by client user agents before sending their HTTP request(s). Web servers may soon be able to handle other types of transport protocols for HTTP requests.
The purpose of a web server is to store and deliver Web contents and / or Web resources. Examples of Web contents may be HTML files, XHTML files, image files, style sheets, scripts, other types of generic files that may be downloaded by clients, etc.
A user agent, commonly a web browser or web crawler, initiates communication by making a request for a specific resource using HTTP and the server responds with the content of that resource or an error message if unable to do so. The resource is typically a real file on the server's secondary storage, but this is not necessarily the case and depends on how the web server and the website are implemented.
While the major function is to serve content, a full implementation of HTTP also includes ways of receiving content from clients. This feature is used for submitting web forms, including uploading of files.
Many generic web servers also support one or more server interfaces used to generate dynamic content by web applications. Implementations used may vary from server-side scripting (i.e. scripting languages) to external application programs. This means that the behaviour of the web application can be defined in separate files (scripts or programs), while the actual server software remains unchanged. Usually, this function is used to generate HTML documents dynamically or other type of contents ("on-the-fly") as opposed to returning static documents. The former is primarily used for retrieving or modifying information from databases. The latter is typically much faster and more easily cached. For performance reasons, usually websites with dynamic contents also have static contents whenever possible.
Web servers can frequently be found embedded in devices such as printers, routers, webcams and serving only a local network. The embedded web server may then be used as a part of a system for monitoring or administering the device in question. This usually means that no additional software has to be installed on the client computer since only a web browser is required (which now is included with most operating systems).
Powered by 654 easy search