Der Client muss sich anmelden, um Netzwerkzugang zu erhalten.
Wann du ihn verwendest
Captive Portals in Hotel- und Flughafen-WLANs.
Häufige Ursachen und Lösungen
511 ist für Captive Portals gedacht: WLAN in Hotels, Flughäfen oder Cafés, das den Datenverkehr abfängt, bis du dich anmeldest oder die Bedingungen akzeptierst. Das Portal sollte mit 511 und einem Login-Link antworten, statt sich als die angefragte Website auszugeben. Betriebssysteme erkennen Portale, indem sie bekannte URLs wie captive.apple.com oder connectivitycheck.gstatic.com/generate_204 abrufen und ein Anmeldefenster öffnen, wenn die Antwort unerwartet ausfällt.
HTTPS lässt sich nicht sauber abfangen, daher siehst du in Portal-Netzen meist Zertifikatsfehler statt einer 511; wenn du eine reine http://-Website wie neverssl.com aufrufst, erscheint die Anmeldeseite. Caches dürfen eine 511 nie speichern, und Apps sollten sie als Netzwerkproblem behandeln, nicht als API-Fehler. Deine eigenen Origin-Server sollten sie nie senden.
Server-Fehler (5xx)
5xx-Codes sind Server-Fehler: Die Anfrage kann in Ordnung sein, aber der Server oder etwas dahinter ist ausgefallen. Für diese Codes lohnt sich eine Alarmierung.
So sieht es aus
HTTP/1.1 511 Network Authentication RequiredSo sendest du ihn
| Node.js / Express | res.status(511).end() |
|---|---|
| Python / Flask | return '', 511 |
| nginx | return 511; |
So prüfst du ihn
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/