Wie wird aus lunolabs.ch eine Webseite? 🔗
Hinter jedem URL-Klick stecken zwei Star-Protokolle: DNS (das Telefonbuch des Internets) und HTTP (die Sprache des Web). Mit HTTPS wird's verschlüsselt. Verstehe alle drei – und du verstehst, was dein Browser wirklich tut.
01DNS – das Telefonbuch des Internets
Computer sprechen IP-Adressen, Menschen sprechen Namen. DNS macht die Übersetzung.
Du tippst lunolabs.ch. Bevor irgendwas anderes passiert, fragt dein Browser: „Welche IP gehört zu diesem Namen?" Das ist die DNS-Lookup. Sie passiert in einer streng hierarchischen Reihenfolge:
Die 4 Stufen
- Resolver (z.B.
8.8.8.8von Google oder1.1.1.1von Cloudflare): dein erster Ansprechpartner. - Root-Server: „Für
.chfrag bei Switch." - TLD-Server (Top Level Domain, hier .ch): „Für
lunolabs.chfrag bei dieser Authority." - Authoritative Server: „
lunolabs.ch=185.21.7.32."
DNS-Record-Typen
| Typ | Bedeutung |
|---|---|
| A | Name → IPv4-Adresse |
| AAAA | Name → IPv6-Adresse |
| CNAME | Name → anderer Name (Alias) |
| MX | Mail-Server für die Domain |
| TXT | Frei-Text, z.B. für SPF/DKIM (Mail) oder Verifizierungen |
| NS | Welche DNS-Server sind für diese Zone zuständig |
02HTTP – die Sprache des Web
Eine Konversation aus Anfrage und Antwort. Stateless, einfach, überall.
Jede HTTP-Anfrage hat eine Methode – sie sagt dem Server, was du willst:
| Methode | Was sie macht | Beispiel |
|---|---|---|
| GET | Hol mir Daten | Webseite anzeigen, API lesen |
| POST | Erstelle was Neues | Formular abschicken, Bild hochladen |
| PUT | Ersetze komplett | Profil-Update mit allen Feldern |
| PATCH | Ändere nur Teile | Nur den Nicknamen ändern |
| DELETE | Lösche | Eintrag entfernen |
Anatomie einer HTTP-Anfrage
Und eine typische Antwort
03Status Codes – die 3-stellige Sprache
200, 404, 500 – jede Zahl sagt eine Geschichte.
- 1xx Informational – „warte, ich bin noch dran" (selten direkt sichtbar)
- 2xx Success – alles gut.
200 OKist der Klassiker.201 Creatednach POST. - 3xx Redirection – „du musst woanders hin".
301 Movedpermanent,302 Foundtemporär. - 4xx Client Error – du bist schuld.
404 Not Found,401 Unauthorized,403 Forbidden,429 Too Many Requests. - 5xx Server Error – der Server ist schuld.
500 Internal Server Error,502 Bad Gateway,503 Service Unavailable.
418 I'm a teapot ist ein echter Status-Code – als Aprilscherz erfunden, von einigen Servern bis heute zurückgegeben, wenn jemand versucht, Kaffee zu brühen auf einem Teekocher. Internet-Humor at its best.
04HTTPS = HTTP + Verschlüsselung
Das 🔒-Symbol oben in deiner URL: TLS macht die Magie.
HTTP allein ist Klartext. Jeder im Netzwerk kann mitlesen, was du tust. HTTPS packt HTTP in eine verschlüsselte Hülle (TLS – Transport Layer Security). Drei Dinge garantiert TLS:
- Vertraulichkeit: Niemand zwischen euch kann mitlesen.
- Integrität: Niemand kann die Daten unbemerkt verändern.
- Authentizität: Du redest wirklich mit lunolabs.ch und nicht mit einem Imposter.
Der TLS-Handshake (vereinfacht)
ClientHello
Browser: „Hi, ich kann diese Verschlüsselungsverfahren: AES-256, ChaCha20… welches willst du?"
ServerHello + Zertifikat
Server: „Nehmen wir AES-256. Hier mein Zertifikat, signiert von Let's Encrypt – damit beweise ich, dass ich wirklich lunolabs.ch bin."
Schlüsselaustausch
Beide einigen sich auf einen Session-Key – ein gemeinsames Geheimnis, das nur sie zwei kennen (Diffie-Hellman-Verfahren).
Finished
Beide schicken einen ersten verschlüsselten Test-Frame. Klappt's, ist der Tunnel offen. Ab jetzt verschlüsselt.
05Cookies, Sessions & nette Header
HTTP ist „stateless" – jede Anfrage ist isoliert. Cookies geben ihr ein Gedächtnis.
Wenn du dich auf einer Seite einloggst und auf einen Link klickst, woher weiss der Server, dass du immer noch eingeloggt bist? Cookies.
- Du loggst dich ein → Server schickt
Set-Cookie: session=abc123. - Bei jeder weiteren Anfrage schickt dein Browser automatisch
Cookie: session=abc123mit. - Der Server schaut in seine Datenbank: „abc123 = Joel, eingeloggt seit 14:32". Bestätigt.
Wichtige Cookie-Flags
| Flag | Was es macht |
|---|---|
| HttpOnly | JavaScript kann nicht ans Cookie ran (Schutz gegen XSS) |
| Secure | Wird nur über HTTPS gesendet |
| SameSite=Lax | Wird bei Cross-Site-Requests nicht mitgeschickt (Schutz gegen CSRF) |
| Max-Age=3600 | Cookie lebt 1 Stunde, dann weg |
Nützliche Header zum Kennen
User-Agent– wer bin ich (Browser, Version, OS)Accept-Language– welche Sprache ich bevorzugeAuthorization: Bearer xyz...– API-Token statt CookieCache-Control– darf das Resultat gecacht werden, wie langeContent-Type– was ist im Body?application/json,text/html...CORS-Header – wer darf von wo auf die API zugreifen
06HTTP/1.1 → HTTP/2 → HTTP/3 – die Evolution
HTTP wurde dreimal modernisiert. Hier was sich geändert hat.
| Version | Jahr | Schlüssel-Feature |
|---|---|---|
| HTTP/1.0 | 1996 | 1 Request pro TCP-Verbindung. Sehr ineffizient. |
| HTTP/1.1 | 1997 | Persistent Connections (mehrere Requests pro Verbindung), Chunked Encoding |
| HTTP/2 | 2015 | Multiplexing (mehrere Requests parallel über 1 Verbindung), Header-Kompression, Server Push |
| HTTP/3 | 2022 | Statt TCP → QUIC (UDP-basiert). Schneller bei Verbindungsabbrüchen, ideal für mobile. |
🎯Key Takeaways
- DNS übersetzt Namen zu IPs in 4 Stufen: Resolver → Root → TLD → Authoritative.
- DNS-Antworten werden überall gecacht – deshalb ist DNS in der Praxis blitzschnell.
- HTTP ist eine simple Request/Response-Sprache. Wichtige Methoden: GET, POST, PUT, DELETE.
- Status-Codes: 2xx = OK, 3xx = woanders, 4xx = dein Fehler, 5xx = Server-Fehler.
- HTTPS = HTTP + TLS. TLS-Handshake → Schlüsselaustausch → verschlüsselter Tunnel.
- Cookies geben HTTP ein „Gedächtnis" – sessions, Login, Tracking.
- HTTP/3 über QUIC ist die Zukunft – multiplexing + Netzwechsel-resistent.