501 Not Implemented

Der Server unterstützt diese Funktion nicht.

Wann du ihn verwendest

Eine HTTP-Methode, die der Server überhaupt nicht kennt.

Häufige Ursachen und Lösungen

501 bedeutet, dass der Server die Anfragemethode überhaupt nicht kennt oder unterstützt, für keine URL: etwa eine WebDAV-Methode wie PROPFIND an einen Server ohne WebDAV oder PATCH an einen alten Server. Bei 405 dagegen existiert die Methode, ist auf dieser URL aber nicht erlaubt. Manche APIs geben 501 auch für Endpunkte zurück, die dokumentiert, aber noch nicht gebaut sind.

Proxys und CDNs können ihn erzeugen: Manche lehnen ungewöhnliche Methoden ab, und ein Server muss auf ein Transfer-Encoding, das er nicht unterstützt, mit 501 antworten. Taucht er unerwartet auf, sende dieselbe Methode mit curl -X direkt an den Origin, um zu sehen, welche Schicht sie ablehnt. Eine 501 ist standardmäßig cachebar, also füge Cache-Control: no-store hinzu, wenn der Endpunkt bald funktionieren soll.

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 501 Not Implemented

So sendest du ihn

Node.js / Expressres.status(501).end()
Python / Flaskreturn '', 501
nginxreturn 501;

So prüfst du ihn

curl -s -o /dev/null -w "%{http_code}\n" https://example.com/

HTTP-Statuscodes öffnen