Web foundations
What happens when you enter a URL?
Opening a URL triggers a chain of work across the browser, DNS, network transport, TLS, HTTP, edge or origin servers, and finally the browser's rendering pipeline. Modern stacks can vary, but the core stages remain recognizable.
Step-by-step
- 1
Parse the URL
The browser interprets the scheme, hostname, port, path, query, and fragment, and may satisfy some work from caches, service workers, or existing connections.
- 2
Resolve the hostname
If an address is not already cached, DNS resolution maps the hostname to one or more network endpoints, often with CDN-aware routing.
- 3
Establish a secure connection
The browser establishes transport and security: commonly TCP plus TLS for HTTP/1.1 or HTTP/2, or QUIC with TLS integrated for HTTP/3.
- 4
Send the HTTP request
The browser sends the request method, path, headers, cookies when applicable, and optionally a request body.
- 5
Process the request
A CDN, reverse proxy, load balancer, or application server handles the request, possibly serving a cache hit or executing server logic.
- 6
Read application data
Dynamic handlers may query caches, databases, internal services, or external APIs before constructing the response.
- 7
Parse and render the response
The browser receives the response, processes HTML and dependent resources, builds rendering structures, runs permitted scripts, and paints the result.
Keep learning
Related visual explainers
How does a CDN work?
A content delivery network serves cacheable content from edge locations closer to users. The edge can answer immediately on a cache hit or fetch the object from an origin on a miss, then reuse it according to cache-control rules.
How does OAuth 2.0 authorization work?
OAuth 2.0 lets an application obtain limited access to another service without receiving the user's password. This explainer follows the common Authorization Code flow with PKCE used by browser and mobile applications.
How does Redis caching work?
A Redis cache keeps frequently requested data in fast in-memory storage so an application can avoid repeating slower database or service work. A common cache-aside flow checks Redis first, falls back to the source on a miss, then stores the result with an expiration policy.