Words to know

Client — the program doing the asking. Here, Chrome.

Server — the computer that stores the files and answers requests.

HTTP — HyperText Transfer Protocol. The agreed set of rules for how the client asks and the server answers. HTTPS is the same thing with the messages encrypted, which is why the padlock appears in the address bar.

Request — a message from client to server. It names a method (GET when you are just fetching something), the path of the file wanted, and some headers. A request for this page looks roughly like:

GET /http/glossary.html HTTP/1.1
Host: labs.vossers.com
User-Agent: Mozilla/5.0 (...) Chrome/...
Accept: text/html

Response — the server's reply: a status code, some headers, then the file itself (the body).

HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 2431

<!DOCTYPE html> ...

Status code — the three-digit verdict. 200 OK, 404 Not Found, and so on. The first digit groups them: 2xx worked, 3xx go elsewhere or use your cache, 4xx the client asked for something wrong, 5xx the server broke.

Header — a line of extra information attached to a request or response, such as Content-Type: image/png.

Stateless — HTTP does not remember. Each request stands alone, and the server has no memory of your last one. Anything that needs remembering (being logged in, a shopping basket) is carried along in the requests themselves, usually in cookies.

URL — the full address, e.g. https://labs.vossers.com/http/glossary.html. The https part is the protocol, labs.vossers.com the server, and /http/glossary.html the path to the file on it.

The whole idea in one sentence

A web page is not one thing that arrives — it is a text file that arrives first, and then one extra request for every other file that text file mentions.

This page: 1 request.