WebBuilding

Foundations

Web server

Summary

A web server is the software, and by extension the computer running it, that receives requests from browsers over HTTP and sends back pages, images and other files. Tim Berners-Lee had the first one running at CERN by the end of 1990. Apache became the most used server in 1996, and as of October 22, 2026, W3Techs ranks Cloudflare Server, Nginx and Apache as the three most used.

What a web server is

“Web server” can mean a program, a computer or the two working together. MDN Web Docs, Mozilla’s reference for web developers, describes the hardware as a computer that stores web server software and a website’s files, such as HTML documents, images, CSS style sheets and JavaScript files, and that is connected to the internet.1

On the software side, the core part is an HTTP server: a program that understands web addresses, called URLs, and HTTP, the protocol browsers use to fetch pages.1 The HTTP standard, RFC 9110, defines a server as “a program that accepts connections in order to service HTTP requests by sending HTTP responses.”2

The same standard uses the term origin server for the program that can give the authoritative answer for a page or file.2 Other machines may sit between the visitor and the origin server, as later sections explain. In this entry, “web server” means the software unless the text says “machine.”

One machine can run websites for many different owners. Apache’s documentation calls this virtual hosting: running sites such as company1.example.com and company2.example.com on a single machine, either with a separate IP address for each site or with many names sharing one address. Visitors cannot tell that the sites share hardware.3 This is how many small sites can share one web hosting server.

How a web server answers a request

A page visit starts when a web browser asks for a file over HTTP. When the request reaches the right machine, the HTTP server accepts it, finds the document and sends it back, also over HTTP.1 If no port is named in the address, plain HTTP uses TCP port 80 and HTTPS uses TCP port 443.2

MDN breaks the server’s decision into three steps:1

  1. It checks whether the requested URL matches a file it holds.
  2. If it does, it sends that file. If not, it checks whether it should build a response for this request instead.
  3. If it can do neither, it sends an error, most often 404 Not Found.

A server has to answer every request, even if only with an error message.1 The server’s settings decide how addresses map to folders. In an example from the Nginx guide, a request for /images/example.png is answered with the file /data/images/example.png on the server’s disk.4

Every response begins with a three-digit status code. Codes fall into five classes: 100 to 199 are informational, 200 to 299 mean success, 300 to 399 are redirects, 400 to 499 are client errors and 500 to 599 are server errors.5 Common examples are 200 OK, 301 Moved Permanently (the page has a new permanent address, which the response gives), 404 Not Found and 503 Service Unavailable, which means the server is not ready, often because it is overloaded or down for maintenance.5

Many servers also name themselves in a Server response header, with a value such as Apache/2.4.1 (Unix).6 MDN warns that a detailed version number in this header can make known vulnerabilities easier to spot, and advises keeping the software patched, since servers can be identified in other ways too.6

Busy servers must answer many visitors at once, and two broad designs exist. In a process-based design such as Apache’s prefork module, a parent process keeps a pool of server processes, and each of them answers requests.7 In an event-driven design such as Nginx’s, each worker process handles many connections without waiting on any one of them; the Nginx team says this scales to “hundreds of thousands of connections per worker process.”8

Static and dynamic responses

MDN calls a server static when it “sends its hosted files as-is” to the browser.1 A dynamic server adds more software, most often an application server and a database. The application server builds or updates the page before the HTTP server sends it, for example by filling an HTML template with text from the database.1

The idea of building pages on request is as old as the web. In his public announcement of August 6, 1991, Tim Berners-Lee wrote that a server could generate hypertext on the fly from other data, and pointed to a server already doing this on CERN’s mainframe.9

An early and widely used method for this was the Common Gateway Interface, or CGI, a simple way for a web server to run an outside program and send back its output. RFC 3875, published in October 2004, documents CGI version 1.1, which was developed at the U.S. National Center for Supercomputing Applications (NCSA) and had been in use on the web since 1993.10 The CERN server’s change history records CGI/1.0 as “fully implemented” in version 2.15beta, dated February 11, 1994.11

Today the web server and the program that builds pages are often separate. The Nginx guide shows a setup in which Nginx serves image files from disk itself and passes every other request to a FastCGI server, a separate program such as a PHP process, listening on port 9000 of the same machine.4

Some applications skip the separate web server altogether. Node.js, a runtime that runs JavaScript outside the browser, has a built-in http module; its own introduction shows a short program that answers “Hello World” on port 3000.12 W3Techs counts Node.js as the web server on 7.4% of websites whose server it can identify, as of October 22, 2026.13

The first web server: CERN httpd

Berners-Lee developed the code for the first web server on a NeXT computer at CERN, and by the end of 1990 he had the first web server and browser running there.14 The W3C’s history dates the first server, nxoc01.cern.ch, later called info.cern.ch, and the first web page to November 1990.15 The machine carried a handwritten label telling people not to power it down, and it is still kept at CERN.1416

CERN’s 1991 release of the web software included the line-mode browser, web server software and a code library for developers.14 Berners-Lee’s August 1991 post described the server as a way to make files available “like anonymous FTP but faster because it only uses one connection.”9

That program became known as CERN httpd, short for HTTP daemon, a daemon being a program that runs in the background waiting for requests. W3C lists its authors as Ari Luotonen, Henrik Frystyk Nielsen and Tim Berners-Lee.17 Luotonen joined CERN in July 1993, added access control and rewrote the server.15 Its change history shows how quickly the basic features of a web server took shape:11

  • Version 0.1 (June 1991): command-line options for rule files and for logging to a file.
  • 2.12 (October 11, 1993): the first release with access authorization, meaning password protection.
  • 2.14 (November 16, 1993): support for forms from the Mosaic browser and clickable images.
  • 2.15beta (February 11, 1994): CGI/1.0, redirection and the common log format.
  • 2.16beta (February 28, 1994): caching when working as a proxy.

W3C describes the finished program as a full-featured server that could also work as a proxy for HTTP, FTP, Gopher, WAIS and news, caching documents as it went.17 CERN ended its direct work on the server with version 3.0, and development moved to the W3C.11 The final version, 3.0A, was generated on July 15, 1996. W3C no longer maintains it and moved its own server work to Jigsaw, a server written in Java.17

The number of servers grew fast. Paul Kunz set up the first web server outside Europe, at SLAC, on December 12, 1991.15 The W3C history counts about 50 known HTTP servers in January 1993, over 200 in October 1993 and over 1,500 registered servers in June 1994.15 CERN’s own history gives higher figures: over 500 known servers by late 1993 and 10,000 by the end of 1994.14

On April 30, 1993, CERN made the web’s source code available royalty-free.14 W3C’s page calls CERN httpd a public domain server, while also noting that it is covered by the MIT copyright statement with an acknowledgment to CERN.17

The main web servers over time

NCSA httpd and Apache

In February 1995 the most popular server on the web was the NCSA HTTP daemon, written by Rob McCool at NCSA at the University of Illinois at Urbana-Champaign. Development had stalled after McCool left NCSA in mid-1994, and webmasters were passing around their own fixes.18

By the end of February 1995, eight of those webmasters had formed the Apache Group. Starting from NCSA httpd 1.3, they released Apache 0.6.2 in April 1995 and Apache 1.0 on December 1, 1995.18 Less than a year after the group formed, Apache passed NCSA’s server as the most used on the internet, according to the 1996 Netcraft survey cited by the project.18

Netcraft has published a monthly web server survey since 1995.19 In a post looking back on the survey’s first year, it reported that the number of sites had grown from 10,835 in August 1995 to 62,430, that NCSA’s share had fallen from 57% to 18%, and that Apache now ran more than one in three sites. Netscape‘s server share peaked at 17% in March 1996.20

The Apache HTTP Server is still maintained. Version 2.4.69 came out on October 1, 2026.21 Its HTTP/2 support, the mod_http2 module, has been available since version 2.4.17.22

Microsoft IIS

On February 12, 1996, Microsoft made Internet Information Server (IIS), its web server for Windows NT Server, available as a free download. Its announcement claimed IIS ran more than four times faster than Netscape’s Netsite server for Windows NT.23 In the same look back, Netcraft put IIS at 5.5% of its survey, from a standing start in February 1996.20

Windows NT Server 4.0, announced on July 31, 1996, included IIS version 2.0.24 A Microsoft Learn page first published in 2016 calls IIS 10.0, which shipped with Windows 10 and Windows Server 2016, the latest version of IIS.25 As of October 22, 2026, W3Techs finds IIS on 2.9% of websites with a known server, and version 10 on 86.2% of those.26 Like Apache’s .htaccess files, IIS can read settings from web.config files inside a site’s folders.27

Nginx

Igor Sysoev began writing Nginx in the spring of 2002 to solve the C10k problem, handling 10,000 connections at once on one server. He released it as open source on October 4, 2004. A 2022 post on the NGINX blog, run by F5, says Nginx became the most widely used web server in the world in 2021.28 Nginx has offered HTTP/3 since version 1.25.0, though as of October 22, 2026 its documentation still calls the module experimental and says it is not built by default.29

LiteSpeed

LiteSpeed Technologies was founded in New Jersey in 2002. It launched LiteSpeed Web Server in 2003 and released a free, open-source edition, OpenLiteSpeed, in 2013.30 The company sells its server as a drop-in replacement for Apache: it reads Apache configuration files and .htaccess files directly, uses an event-driven design and works with hosting control panels such as cPanel, Plesk and DirectAdmin.31 It also says it was the first to ship a production-ready implementation of HTTP/3.31

Newer names

  • OpenResty is an open-source web platform that combines an enhanced Nginx core with LuaJIT, a just-in-time compiler for the Lua language.32
  • Caddy says it was the first web server to use HTTPS automatically and by default. It gets certificates from Let’s Encrypt and, if that fails, from ZeroSSL.33
  • Cloudflare Server is described by W3Techs as a web server developed by Cloudflare.34 Cloudflare’s network works as a reverse proxy, a server that sits in front of one or more web servers and intercepts requests from visitors.35 RFC 9110 defines a reverse proxy as an intermediary that acts as the origin server for the visitor’s connection.2

Market share today

Two surveys, W3Techs and Netcraft, measure different things, so their numbers do not match. W3Techs reports the share of websites whose web server it can identify. Its sample is more than 20 million sites that it judges to have meaningful content, and it counts each website once, not each page or subdomain.36 As of October 22, 2026, its figures are:13

Web serverShare of websites (W3Techs)
Cloudflare Server32.6%
Nginx30.2%
Apache21.3%
LiteSpeed13.9%
Node.js7.4%
Microsoft IIS2.9%
Caddy1.1%
Google Servers1.0%

W3Techs notes that one website can use more than one web server, so its percentages add up to more than 100%.13 A site behind a reverse proxy, for example, is answered by the proxy while another server holds the site itself.35 On September 22, 2026, W3Techs reported that Cloudflare Server had overtaken Nginx as the most used web server in its survey.37

Netcraft instead counts every site that answers its survey, about 1.5 billion, and reports shares by the developer of the server software, separately for sites, domains and web-facing computers. Its July 2026 survey, published on July 27, 2026, and still the latest it had released as of October 22, 2026, covered 1,494,915,628 sites, 305,348,459 domains and 14,772,048 computers.38 In it:38

  • All sites: nginx 20.37%, Cloudflare 16.67%, Apache 11.50% and OpenResty 8.02%.
  • Top million busiest sites: Cloudflare 28.29%, nginx 20.02%, Apache 15.56% and LiteSpeed 3.88%.
  • Computers: nginx 43.92%, Apache 18.82% and Microsoft 5.73%.

The gap for LiteSpeed shows how much method matters: W3Techs finds it on 13.9% of websites with a known server, while Netcraft places it at 3.88% of the million busiest sites.3938 The two figures do not contradict each other: W3Techs counts a filtered sample of websites, while Netcraft ranks the busiest million sites within a much larger count.

Timeline

  1. Apache HTTP Server 2.4.69 is released21
  2. W3Techs reports that Cloudflare Server has overtaken Nginx37
  3. LiteSpeed releases the open-source OpenLiteSpeed30
  4. Igor Sysoev releases Nginx as open source28
  5. LiteSpeed Web Server is launched30
  6. Windows NT Server 4.0 is announced, including IIS 2.024
  7. CERN httpd 3.0A, the final version, is generated17
  8. Microsoft makes Internet Information Server a free download23
  9. Apache 1.0 is released18
  10. Netcraft's survey counts 10,835 sites20
  11. Apache 0.6.2, the first public release, comes out18
  12. CERN httpd 2.15beta fully implements CGI/1.011
  13. Paul Kunz sets up the first web server outside Europe, at SLAC15
  14. CERN httpd version 0.1 appears in the server's change history11
  15. The first web server is running at CERN by the end of the year14

What it means for your website

If your site is on a hosted builder such as Wix, Squarespace or Shopify, the platform runs the servers and you never choose one. The web server matters when you rent hosting for self-hosted WordPress or another application, because it decides where settings live and how pages are cached.

  • Ask which server your host runs. WordPress recommends Apache or Nginx, and says any server that supports PHP and MySQL will also work.40
  • Know where your rules go. Apache reads .htaccess files and IIS reads web.config files inside a site’s folders. Nginx has no such file: all its settings are made at the server level by an administrator, and WordPress cannot change them.27 LiteSpeed reads .htaccess files like Apache.31 This matters most for redirects during a website migration.
  • Match your cache plugin to the server. The LiteSpeed Cache plugin for WordPress, with more than 7 million active installations, offers its server-level page cache only on LiteSpeed or OpenLiteSpeed servers, LiteSpeed-powered hosting or the QUIC.cloud network. Its other speed features work on any server.41
  • Read the error codes. A 404 means a page is missing; a 503 means the server is not ready, often because it is overloaded or under maintenance.5 Repeated 5xx errors are a question for your host about uptime.
  • Keep it patched. On a virtual private server, updates are your job. Apache’s newest release is 2.4.69, from October 1, 2026.21 Hiding the version in the Server header is no substitute for updating.6
  • Consider static files. A site made only of finished files needs nothing more than a static server and is the easiest kind to set up.1 Our glossary explains the static site option.

For what else to ask before you sign up, see our guide to domains and hosting.

See also

References

  1. What is a web server?. MDN Web Docs, Mozilla. accessed October 22, 2026.
  2. RFC 9110: HTTP Semantics. Internet Engineering Task Force, RFC Editor. 2022-06. accessed October 22, 2026.
  3. Apache Virtual Host documentation. Apache HTTP Server Version 2.4 Documentation, The Apache Software Foundation. accessed October 22, 2026.
  4. Beginner's Guide. nginx documentation, nginx.org. accessed October 22, 2026.
  5. HTTP response status codes. MDN Web Docs, Mozilla. accessed October 22, 2026.
  6. Server header. MDN Web Docs, Mozilla. accessed October 22, 2026.
  7. Apache MPM prefork. Apache HTTP Server Version 2.4 Documentation, The Apache Software Foundation. accessed October 22, 2026.
  8. Inside NGINX: How We Designed for Performance and Scale. Owen Garrett, NGINX Community Blog, F5. 2015-06-10. accessed October 22, 2026.
  9. Re: Qualifiers on Hypertext links… (alt.hypertext post, archived). Tim Berners-Lee, via W3C. 1991-08-06. accessed October 22, 2026.
  10. RFC 3875: The Common Gateway Interface (CGI) Version 1.1. Internet Engineering Task Force, RFC Editor. 2004-10. accessed October 22, 2026.
  11. httpd version history (Change History for httpd). W3C. accessed October 22, 2026.
  12. Introduction to Node.js. Node.js project, OpenJS Foundation. accessed October 22, 2026.
  13. Usage statistics of web servers. W3Techs. 2026-10-22. accessed October 22, 2026.
  14. A short history of the Web. CERN. accessed October 22, 2026.
  15. A Little History of the World Wide Web (created by Robert Cailliau, maintained by Dan Connolly). W3C. accessed October 22, 2026.
  16. NeXT server (Computer Centre visit point display). CERN IT Department. accessed October 22, 2026.
  17. CERN httpd. W3C. accessed October 22, 2026.
  18. About the Apache HTTP Server Project. The Apache Software Foundation. accessed October 22, 2026.
  19. Netcraft Web Server Survey. Netcraft. accessed October 22, 2026.
  20. Why do you need so many sites?. Netcraft. accessed October 22, 2026.
  21. Apache HTTP Server Project. The Apache Software Foundation. 2026-10-01. accessed October 22, 2026.
  22. Apache Module mod_http2. Apache HTTP Server Version 2.4 Documentation, The Apache Software Foundation. accessed October 22, 2026.
  23. Microsoft Ships Internet Information Server; Free Product Outperforms UNIX and Netscape Servers. Microsoft. 1996-02-12. accessed October 22, 2026.
  24. Microsoft Announces the Release of Windows NT Server 4.0. Microsoft. 1996-07-31. accessed October 22, 2026.
  25. New Features Introduced in IIS 10.0. Microsoft Learn. accessed October 22, 2026.
  26. Usage statistics and market share of Microsoft-IIS. W3Techs. 2026-10-22. accessed October 22, 2026.
  27. Nginx. Advanced Administration Handbook, WordPress.org. accessed October 22, 2026.
  28. Do Svidaniya, Igor, and Thank You for NGINX. Rob Whiteley, NGINX Community Blog, F5. 2022-01-18. accessed October 22, 2026.
  29. Module ngx_http_v3_module. nginx documentation, nginx.org. accessed October 22, 2026.
  30. About LiteSpeed Technologies. LiteSpeed Technologies. accessed October 22, 2026.
  31. LiteSpeed Web Server. LiteSpeed Technologies. accessed October 22, 2026.
  32. OpenResty. OpenResty Inc.. accessed October 22, 2026.
  33. Automatic HTTPS. Caddy documentation. accessed October 22, 2026.
  34. Usage statistics and market share of Cloudflare Server. W3Techs. 2026-10-22. accessed October 22, 2026.
  35. What is a reverse proxy?. Cloudflare Learning Center. accessed October 22, 2026.
  36. Technologies overview (methodology). W3Techs. accessed October 22, 2026.
  37. The Cloudflare Server is now the most used web server, overtaking Nginx. Sam Soltano, W3Techs. 2026-09-22. accessed October 22, 2026.
  38. July 2026 Web Server Survey. Netcraft. 2026-07-27. accessed October 22, 2026.
  39. Usage statistics and market share of LiteSpeed. W3Techs. 2026-10-22. accessed October 22, 2026.
  40. Requirements. WordPress.org. accessed October 22, 2026.
  41. LiteSpeed Cache. WordPress.org Plugin Directory. accessed October 22, 2026.

Web Building Encyclopedia. First published October 22, 2026. Last reviewed October 22, 2026. Every fact on this page is linked to a source we opened. Spotted an error? Write to [email protected].