TrueURL
TrueURL

Menü

101 Switching Protocols

Der Server nimmt die Upgrade-Anfrage des Clients an und wechselt auf dieser Verbindung zu einem anderen Protokoll, in der Praxis fast immer zu WebSocket.

Statustext
Switching Protocols
Weiterleitung
Nein
Standardmäßig cachebar
Nein

101 Switching Protocols bedeutet, dass der Server den Anfrage-Header Upgrade des Clients akzeptiert. Direkt nach der Leerzeile, mit der die 101-Antwort endet, sprechen beide Seiten auf dieser Verbindung ein anderes Protokoll. Die Antwort muss einen Upgrade-Header enthalten, der das neue Protokoll nennt.

Heute ist das fast immer der WebSocket-Handshake. Der Browser sendet ein GET mit Upgrade: websocket, Connection: Upgrade und einem Sec-WebSocket-Key. Der Server antwortet mit 101 und dem passenden Sec-WebSocket-Accept, und von da an tauschen beide Seiten WebSocket-Frames aus. 101 wurde auch für das h2c-Upgrade von unverschlüsseltem HTTP/1.1 auf HTTP/2 verwendet, das inzwischen als veraltet gilt. Browser handeln HTTP/2 und HTTP/3 stattdessen während des TLS-Handshakes aus (ALPN).

Den Upgrade-Mechanismus gibt es nur in HTTP/1.1. HTTP/2 und HTTP/3 senden nie 101; WebSockets über diese Protokolle nutzen Extended CONNECT (RFC 8441 und RFC 9220).

Beispielantwort

HTTP
HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=

SEO und Weiterleitungsprüfung

Eine 101 ist nie das Ergebnis eines gewöhnlichen Seitenaufrufs. Browser und Crawler erhalten sie nur, wenn sie ausdrücklich ein Upgrade der Verbindung anfordern, daher hat sie keinen Einfluss auf die Indexierung. Ein Redirect-Checker sendet einfache GET-, HEAD- oder POST-Anfragen und bekommt keine 101 zu sehen. Wird ein WebSocket-Endpunkt wie eine normale URL geprüft, antwortet er meist mit einem 4xx-Code wie 426 Upgrade Required oder 400 Bad Request.

Häufige Ursachen und Einsatzzwecke

  • Ein Browser öffnet eine WebSocket-Verbindung (new WebSocket('wss://...')), und der Server akzeptiert den Handshake.
  • Ein Client fordert das veraltete h2c-Upgrade auf unverschlüsseltes HTTP/2 an, und der Server unterstützt es.
  • WebSockets funktionieren hinter einem Reverse-Proxy nicht, weil der Proxy die Header Upgrade und Connection nicht weiterreicht. Setzen Sie in nginx proxy_http_version 1.1 und geben Sie beide Header an das Backend weiter.

URL-Redirect-Checker

Prüfen Sie mit dem kostenlosen Redirect-Checker von TrueURL Hop für Hop, welche Statuscodes eine URL zurückgibt.