501

Not Implemented

Oficiálna stránka
V súčasnosti sa nerealizuje

Všeobecné vysvetlenie stavového kódu 501

Tento textový blok je bohužiaľ k dispozícii len v angličtine.

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.

.

Špecifikácia stavového kódu HTTP 501

Stavový kód 501 Not Implemented znamená, že server nepodporuje funkcie potrebné na splnenie požiadavky. Toto je vhodná odpoveď, keď server nerozpozná metódu požiadavky a nie je schopný ju podporovať pre žiadny zdroj. Odpoveď 501 Not Implemented sa štandardne ukladá do vyrovnávacej pamäte; t. j. ak nie je v definícii metódy alebo vo výslovných kontrolách vyrovnávacej pamäte uvedené inak.

Zdroj / Citát z: Stavový kód HTTP 501 Not Implemented je špecifikovaný v časti 6.6.2 časti RFC7231.

Ako vyhodiť stavový kód 501 pomocou PHP?

Na vyhodenie stavového kódu HTTP 501 na webovej stránke možno použiť funkciu PHP http_response_code. Syntax je nasledovná: http_response_code(501) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testovanie stavového kódu HTTP 501

Aby bolo možné zobraziť stavový kód HTTP (v tomto prípade 501 Not Implemented) a ďalšie informácie na strane klienta, je potrebné otvoriť vývojovú konzolu pomocou klávesu F12. Potom prejdite na kartu "Sieť". Teraz je možné otvoriť stránku, webová stránka (príklad index.php) by mala byť viditeľná na karte siete. Tú je potrebné vybrať a potom je potrebné vybrať sekciu Herder. Používateľovi sa potom zobrazí nasledujúci výsledok:

Stavový kód 501 Not Implemented
Prehľad
URL: https://http-statuscode.com/errorCodeExample.php?code=501
Stav: 501 Not Implemented
Tieto: Network
IP adresa: XX.XX.XX.XX
Stavový kód 501 Not Implemented

Ako vyriešim problém so stavovým kódom 501?

Server vráti stavový kód HTTP 501 Not Implemented, ktorý znamená, že požadovaná metóda nie je podporovaná alebo nie je implementovaná. To znamená, že server nemôže spracovať konkrétnu požiadavku, pretože požadovaná funkcia nie je k dispozícii. Na vyriešenie problému so stavovým kódom HTTP 501 Not Implemented môžete vykonať niekoľko krokov:

  1. Kontrola použitej metódy HTTP: Uistite sa, že sa pre požiadavku používa správna metóda HTTP. Protokol HTTP ponúka niekoľko metód, napríklad GET, POST, PUT, DELETE atď. Môže sa vrátiť stavový kód 501 Not Implemented, pretože požadovanú metódu server nepodporuje. Skontrolujte špecifikácie rozhrania API servera alebo dokumentáciu, aby ste sa uistili, že používate správnu metódu.
  2. Kontrola konfigurácie servera: Server môže vrátiť stavový kód 501 Not Implemented, ak niektoré funkcie alebo moduly nie sú povolené alebo správne nakonfigurované. Uistite sa, že sú na serveri povolené všetky požadované moduly a funkcie, aby sa požiadavka spracovala správne. Skontrolujte konfiguračné súbory servera, napríklad konfiguračný súbor Apache (httpd.conf) alebo konfiguračný súbor Nginx (nginx.conf), aby ste sa uistili, že je všetko správne nastavené.
  3. Aktualizujte softvér servera: Niekedy sa môže objaviť stavový kód 501 Not Implemented, ak je použitý softvér servera zastaraný a nepodporuje požadovanú funkciu. Uistite sa, že používate najnovšiu verziu softvéru servera a že sú nainštalované všetky dostupné aktualizácie. Tým sa môžu odstrániť známe problémy a pridať nové funkcie, ktoré predtým neboli implementované.
  4. Podľa dokumentácie servera: Informácie o stavovom kóde 501 Not Implemented nájdete v oficiálnej dokumentácii servera alebo frameworku, ktorý používate. Dokumentácia môže obsahovať konkrétne pokyny alebo rady, ako problém odstrániť. Vyhľadajte časti o riešení problémov, známych problémoch alebo špecifických konfiguračných nastaveniach, ktoré je potrebné skontrolovať.

Dôležité je poznamenať, že vyriešenie problému so stavovým kódom HTTP 501 Not Implemented do veľkej miery závisí od konkrétnej konfigurácie servera, použitého softvéru a typu požiadavky. Uvedené kroky však poskytujú všeobecný návod na riešenie problému a nájdenie možných riešení.

Ako vytvoriť vlastnú chybovú stránku pre stavový kód 501

Vytvorenie vlastnej chybovej stránky 501 Not Implemented je pomerne jednoduché v prípade webových serverov Apache aj NGINX.

Apache Webserver

Webový server Apache je jedným z najbežnejších webových serverov na internete. Ak chcete vytvoriť vlastnú chybovú stránku 501 Not Implemented v serveri "Apache", je potrebné vykonať nasledujúcu zmenu v nasledujúcom súbore.

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

NGINX Webserver

Podobne ako webový server Apache, aj NGINX je na internete široko používaný. Ak chcete vytvoriť vlastnú chybovú stránku 501 Not Implemented v serveri "NGINX", je potrebné vykonať nasledujúcu zmenu v nasledujúcom súbore.

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

Kompatibilita stavového kódu 501 s prehliadačom

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

Konštanty v programovacích jazykoch

HttpStatusCode.NotImplemented
http.StatusNotImplemented
Response::HTTP_NOT_IMPLEMENTED
httplib.NOT_IMPLEMENTED
http.client.NOT_IMPLEMENTED
http.HTTPStatus.NOT_IMPLEMENTED
:not_implemented
Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser je nadšený webový vývojár so záľubou v stavových kódoch HTTP.

LinkedInGitHub