501

Not Implemented

Oficialus
Šiuo metu neįgyvendinta

Bendras būsenos kodo 501 paaiškinimas

Deja, šis teksto blokas pateikiamas tik anglų kalba.

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.

.

HTTP būsenos kodo 501 specifikacija

501 Not Implemented būsenos kodas rodo, kad serveris nepalaiko užklausai įvykdyti reikalingų funkcijų. Tai tinkamas atsakymas, kai serveris neatpažįsta užklausos metodo ir negali jo palaikyti jokiam ištekliui. 501 Not Implemented atsakymą pagal nutylėjimą galima talpinti į talpyklą, t. y. jei metodo apibrėžtyje arba aiškiose talpyklos valdymo priemonėse nenurodyta kitaip.

Šaltinis / citata iš: HTTP būsenos kodas 501 Not Implemented nurodytas 6.6.2 skirsnyje 6.6.2.

Kaip naudojant PHP išmesti 501 būsenos kodą?

Norint žiniatinklio puslapyje nurodyti HTTP būsenos kodą 501, galima naudoti PHP funkciją http_response_code. Sintaksė tokia: http_response_code(501) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

HTTP būsenos kodo 501 testavimas

Kad kliento pusėje būtų galima rodyti HTTP būsenos kodą (šiuo atveju 501 Not Implemented) ir kitą informaciją, kūrimo konsolę reikia atidaryti klavišu F12. Tada pereikite prie skirtuko "Network" (tinklas). Dabar galima atidaryti puslapį, tinklo skirtuke turi būti matoma svetainė (pavyzdys index.php). Ją reikia pasirinkti, o tada reikia pasirinkti skyrių Herder (Herderis). Tada naudotojas matys tokį rezultatą:

Būsenos kodas 501 Not Implemented
Apžvalga
URL: https://http-statuscode.com/errorCodeExample.php?code=501
Statusas: 501 Not Implemented
Šie: Network
IP adresas: XX.XX.XX.XX
Būsenos kodas 501 Not Implemented

Kaip išspręsti 501 būsenos kodo problemą?

Serveris grąžina HTTP būsenos kodą 501 Not Implemented, kuris rodo, kad prašomas metodas nepalaikomas arba neįgyvendintas. Tai reiškia, kad serveris negali apdoroti konkrečios užklausos, nes nėra reikiamos funkcijos. Norėdami išspręsti HTTP būsenos kodo 501 Not Implemented problemą, galite imtis kelių veiksmų:

  1. Patikrinkite naudojamą HTTP metodą: Įsitikinkite, kad užklausai naudojamas tinkamas HTTP metodas. HTTP siūlo keletą metodų, pavyzdžiui, GET, POST, PUT, DELETE ir kt. Gali būti grąžinamas būsenos kodas 501 Not Implemented, nes serveris nepalaiko prašomo metodo. Patikrinkite serverio API specifikacijas arba dokumentaciją, kad įsitikintumėte, jog naudojate tinkamą metodą.
  2. Patikrinkite serverio konfigūraciją: Serveris gali grąžinti būsenos kodą 501 Not Implemented, jei tam tikros funkcijos arba moduliai nėra įjungti arba sukonfigūruoti netinkamai. Įsitikinkite, kad visi reikalingi moduliai ir funkcijos yra įjungti serveryje, kad užklausa būtų apdorota teisingai. Patikrinkite serverio konfigūracijos failus, pavyzdžiui, "Apache" konfigūracijos failą (httpd.conf) arba "Nginx" konfigūracijos failą (nginx.conf), ir įsitikinkite, kad viskas nustatyta teisingai.
  3. Atnaujinkite serverio programinę įrangą: Kartais būsenos kodas 501 Not Implemented gali būti rodomas, jei naudojama serverio programinė įranga yra pasenusi ir nepalaiko prašomų funkcijų. Įsitikinkite, kad naudojate naujausią serverio programinės įrangos versiją ir kad įdiegti visi galimi atnaujinimai. Taip gali būti ištaisytos žinomos problemos ir pridėtos naujos funkcijos, kurios anksčiau nebuvo įdiegtos.
  4. Susipažinkite su serverio dokumentacija: Informacijos apie 501 Not Implemented būsenos kodą ieškokite oficialioje naudojamo serverio arba sistemos dokumentacijoje. Dokumentacijoje gali būti pateikta konkrečių nurodymų ar užuominų, kaip išspręsti problemą. Ieškokite trikčių šalinimo skyrių, žinomų problemų arba konkrečių konfigūracijos nustatymų, kuriuos reikia patikrinti.

Svarbu pažymėti, kad HTTP būsenos kodo 501 Not Implemented problemos sprendimas labai priklauso nuo konkrečios serverio konfigūracijos, naudojamos programinės įrangos ir užklausos tipo. Tačiau pirmiau pateikti veiksmai yra bendras vadovas, kaip spręsti problemą ir rasti galimus jos sprendimo būdus.

Kaip sukurti savo klaidų puslapį, kuriame būtų rodomas būsenos kodas 501

Sukurti savo 501 Not Implemented klaidos puslapį gana paprasta naudojant tiek "Apache", tiek "NGINX" žiniatinklio serverius.

Apache Webserver

Interneto serveris "Apache" yra vienas iš labiausiai paplitusių interneto svetainių serverių. Norėdami sukurti savo 501 Not Implemented klaidos puslapį "Apache", šiame faile reikia atlikti toliau nurodytus pakeitimus.

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

NGINX Webserver

Panašiai kaip ir žiniatinklio serveris "Apache", "NGINX" taip pat plačiai naudojamas internete. Norėdami sukurti savo 501 Not Implemented klaidos puslapį "NGINX", šiame faile reikia atlikti toliau nurodytus pakeitimus.

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

501 būsenos kodo suderinamumas su naršyklėmis

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

Konstantos programavimo kalbose

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

Išorinės nuorodos, kuriose pateikiama daugiau informacijos apie HTTP būsenos kodą 501:

Autorius: Tony Brüser
Autorius: Tony Brüser

Tony Brüseris yra entuziastingas žiniatinklio kūrėjas, mėgstantis HTTP būsenos kodus.

LinkedInGitHub