501

Not Implemented

Officiell
För närvarande inte genomfört

Allmän förklaring av statuskoden 501

Detta textblock finns tyvärr bara på engelska.

The HTTP error 501 Not Implemented occurs when a web server receives a request from a client that requests a function or feature that the server does not support or implement. The server recognises the request but cannot execute it because it does not have the necessary functions or resources. This can happen, for example, when a client uses an HTTP method that the server does not support, or when the server uses an older version of HTTP that does not support certain features available in a newer version.

A practical example of the HTTP error 501 Not Implemented would be when a web server receives a request for an HTTP method that it does not support, such as the PATCH method for updating part of a resource. If the server has not implemented this method, it will return a 501 Not Implemented error to tell the client that the request cannot be executed. Another example would be if a client sends a request for a specific version of HTTP that the server does not support, such as HTTP/2 when the server only supports HTTP/1.1. In this case, the server would return error 501 Not Implemented to tell the client that it cannot execute the request.

.

Specifikation av HTTP-statuskoden 501

Statuskoden 501 Not Implemented anger att servern inte har stöd för den funktionalitet som krävs för att uppfylla begäran. Detta är ett lämpligt svar när servern inte känner igen begäran och inte kan stödja den för någon resurs. Ett 501 Not Implemented-svar är som standard cachelagbart, dvs. om inget annat anges i metoddefinitionen eller uttryckliga cachekontroller.

Källa / Citat från: HTTP-statuskoden 501 Not Implemented anges i avsnitt 6.6.2 i RFC7231.

Hur skickar man en 501-statuskod med PHP?

För att kasta HTTP-statuskoden 501 på en webbsida kan PHP-funktionen http_response_code användas. Syntaxen är följande: http_response_code(501) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testa HTTP-statuskoden 501

För att kunna visa HTTP-statuskoden (i det här fallet 501 Not Implemented) och annan information på klientsidan måste utvecklingskonsolen öppnas med F12. Navigera sedan till fliken "Network" (nätverk). Nu kan sidan öppnas, webbplatsen (exempel index.php) ska vara synlig i fliken nätverk. Denna måste väljas och sedan måste avsnittet Herder väljas. Användaren kommer då att se följande resultat:

Statuskod 501 Not Implemented
Översikt
URL: https://http-statuscode.com/errorCodeExample.php?code=501
Status: 501 Not Implemented
Dessa: Network
IP-adress: XX.XX.XX.XX
Statuskod 501 Not Implemented

Hur löser jag problemet med statuskoden 501?

HTTP-statuskoden 501 Not Implemented returneras av servern för att indikera att den begärda metoden inte stöds eller inte är implementerad. Detta innebär att servern inte kan behandla den specifika begäran eftersom den nödvändiga funktionaliteten inte är tillgänglig. För att lösa problemet med HTTP-statuskod 501 Not Implemented finns det flera steg du kan ta:

  1. Kontrollera den använda HTTP-metoden: Se till att rätt HTTP-metod används för begäran. HTTP erbjuder flera metoder som GET, POST, PUT, DELETE, etc. Statuskoden 501 Not Implemented kan returneras eftersom den begärda metoden inte stöds av servern. Kontrollera specifikationerna för serverns API eller dokumentationen för att se till att du använder rätt metod.
  2. Kontrollera serverkonfigurationen: Servern kan returnera statuskod 501 Not Implemented om vissa funktioner eller moduler inte är aktiverade eller konfigurerade korrekt. Se till att alla nödvändiga moduler och funktioner är aktiverade på servern så att begäran kan behandlas korrekt. Kontrollera serverns konfigurationsfiler, t.ex. Apache-konfigurationsfilen (httpd.conf) eller Nginx-konfigurationsfilen (nginx.conf), för att se till att allt är korrekt inställt.
  3. Uppdatera serverns programvara: Ibland kan statuskod 501 Not Implemented uppstå om den serverprogramvara som används är föråldrad och inte stöder den begärda funktionen. Se till att du använder den senaste versionen av serverprogramvaran och att alla tillgängliga uppdateringar är installerade. Detta kan åtgärda kända problem och lägga till nya funktioner som inte tidigare implementerats.
  4. Konsultera serverdokumentationen: Kontrollera den officiella dokumentationen för servern eller ramverket du använder för information om statuskod 501 Not Implemented. Dokumentationen kan innehålla specifika instruktioner eller tips om hur du åtgärdar problemet. Leta efter felsökningsavsnitt, kända problem eller specifika konfigurationsinställningar som måste kontrolleras.

Det är viktigt att notera att lösningen på problemet med HTTP-statuskod 501 Not Implemented beror mycket på den specifika serverkonfigurationen, programvaran som används och typen av förfrågan. Stegen ovan ger dock en allmän vägledning för att ta itu med problemet och hitta möjliga lösningar.

Så här skapar du en egen felsida för statuskoden 501

Det är relativt enkelt att skapa en egen 501 Not Implemented-felsida med både Apache- och NGINX-webbservrarna.

Apache Webserver

Webbservern "Apache" är en av de vanligaste webbservrarna på Internet. För att skapa en egen 501 Not Implemented-felsida i "Apache" måste följande ändring göras i följande fil.

File: .htaccess
ErrorDocument 501 /errors/501.html

NGINX Webserver

I likhet med webbservern Apache används NGINX i stor utsträckning på Internet. För att skapa en egen 501 Not Implemented-felsida i "NGINX" måste följande ändring göras i följande fil.

File: sites-enabled/default
error_page 501 /501.html;
location = /501.html {
    root /usr/share/nginx/html;
    internal;
}

Webbläsarnas kompatibilitet med statuskoden 501

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Konstanter i programmeringsspråk

HttpStatusCode.NotImplemented
http.StatusNotImplemented
Response::HTTP_NOT_IMPLEMENTED
httplib.NOT_IMPLEMENTED
http.client.NOT_IMPLEMENTED
http.HTTPStatus.NOT_IMPLEMENTED
:not_implemented

Underhållande memes om HTTP-statuskoden 501

Författare: Tony Brüser
Författare: Tony Brüser

Tony Brüser är en entusiastisk webbutvecklare med en förkärlek för HTTP-statuskoder.

LinkedInGitHub