501

Not Implemented

Virallinen
Tällä hetkellä ei toteuteta

Yleinen selitys 501-tilakoodista

Tämä tekstilohko on valitettavasti saatavilla vain englanniksi.

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-tilakoodin 501 määrittely

Tilakoodi 501 Not Implemented osoittaa, että palvelin ei tue pyynnön täyttämiseen tarvittavia toimintoja. Tämä on asianmukainen vastaus, kun palvelin ei tunnista pyyntömenetelmää eikä pysty tukemaan sitä minkään resurssin osalta. 501 Not Implemented-vastaus on oletusarvoisesti välimuistissa, ellei menetelmämäärittelyssä tai nimenomaisissa välimuistiin tallentamisen ohjauksissa toisin mainita.

Lähde / Lainaus: HTTP-tilakoodi 501 Not Implemented on määritelty 6.6.2:n RFC7231 kohdassa RFC7231.

Kuinka heittää 501-tilakoodi PHP:llä?

HTTP-tilakoodin 501 heittämiseen verkkosivulle voidaan käyttää PHP-funktiota http_response_code. Syntaksi on seuraava: http_response_code(501) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testaa HTTP-tilakoodi 501

Jotta HTTP-tilakoodi (tässä tapauksessa 501 Not Implemented) ja muut tiedot voidaan näyttää asiakaspuolella, kehityskonsoli on avattava F12-näppäimellä. Siirry sitten "Network"-välilehdelle. Nyt sivu voidaan avata, verkkosivuston (esimerkki index.php) pitäisi näkyä verkko-välilehdellä. Tämä on valittava ja sen jälkeen on valittava Herder-osio. Käyttäjä näkee sitten seuraavan tuloksen:

Tilakoodi 501 Not Implemented
Yleiskatsaus
URL: https://http-statuscode.com/errorCodeExample.php?code=501
Tila: 501 Not Implemented
Nuo: Network
IP-osoite: XX.XX.XX.XX
Tilakoodi 501 Not Implemented

Miten ratkaisen 501-tilakoodiin liittyvän ongelman?

Palvelin palauttaa HTTP-tilakoodin 501 Not Implemented osoittaakseen, että pyydettyä menetelmää ei tueta tai sitä ei ole toteutettu. Tämä tarkoittaa, että palvelin ei voi käsitellä kyseistä pyyntöä, koska vaadittu toiminto ei ole käytettävissä. Voit ratkaista HTTP-tilakoodin 501 Not Implemented aiheuttaman ongelman useilla toimenpiteillä:

  1. Tarkista käytetty HTTP-menetelmä: Varmista, että pyyntöön käytetään oikeaa HTTP-menetelmää. HTTP tarjoaa useita menetelmiä, kuten GET, POST, PUT, DELETE jne. Tilakoodi 501 Not Implemented saatetaan palauttaa, koska palvelin ei tue pyydettyä menetelmää. Tarkista palvelimen API:n määrittelyistä tai dokumentaatiosta, että käytät oikeaa menetelmää.
  2. Tarkista palvelimen kokoonpano: Palvelin saattaa palauttaa tilakoodin 501 Not Implemented, jos tietyt toiminnot tai moduulit eivät ole käytössä tai niitä ei ole määritetty oikein. Varmista, että kaikki tarvittavat moduulit ja toiminnot ovat käytössä palvelimella, jotta pyyntö voidaan käsitellä oikein. Tarkista palvelimen konfiguraatiotiedostot, kuten Apachen konfiguraatiotiedosto (httpd.conf) tai Nginxin konfiguraatiotiedosto (nginx.conf), varmistaaksesi, että kaikki on asetettu oikein.
  3. Palvelinohjelmiston päivittäminen: Joskus tilakoodi 501 Not Implemented voi esiintyä, jos käytetty palvelinohjelmisto on vanhentunut eikä tue pyydettyjä toimintoja. Varmista, että käytät palvelinohjelmiston uusinta versiota ja että kaikki saatavilla olevat päivitykset on asennettu. Tämä saattaa korjata tunnettuja ongelmia ja lisätä uusia ominaisuuksia, joita ei ole aiemmin toteutettu.
  4. Konsultoi palvelimen dokumentaatiota: Tarkista käyttämäsi palvelimen tai kehyksen virallisesta dokumentaatiosta tietoja tilakoodista 501 Not Implemented. Dokumentaatio saattaa sisältää erityisiä ohjeita tai vihjeitä ongelman korjaamiseen. Etsi vianmääritysosioita, tunnettuja ongelmia tai erityisiä kokoonpanoasetuksia, jotka on tarkistettava.

On tärkeää huomata, että HTTP-tilakoodi 501 Not Implemented -ongelman ratkaiseminen riippuu suuresti palvelimen erityisestä kokoonpanosta, käytetystä ohjelmistosta ja pyynnön tyypistä. Yllä olevat vaiheet tarjoavat kuitenkin yleisen ohjeen ongelman käsittelyyn ja mahdollisten ratkaisujen löytämiseen.

Miten luoda oma virhesivu tilakoodille 501?

Oman 501 Not Implemented-virhesivun luominen on suhteellisen helppoa sekä Apache- että NGINX-verkkopalvelimilla.

Apache Webserver

Verkkopalvelin "Apache" on yksi Internetin yleisimmistä verkkopalvelimista. Jotta voit luoda oman 501 Not Implemented-virhesivun "Apachessa", seuraavaan tiedostoon on tehtävä seuraava muutos.

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

NGINX Webserver

Samanlainen kuin verkkopalvelin "Apache", "NGINX" on myös laajalti käytössä Internetissä. Jotta voit luoda oman 501 Not Implemented-virhesivun "NGINX"-palvelimessa, seuraavaan tiedostoon on tehtävä seuraava muutos.

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

Selainyhteensopivuus 501-tilakoodin kanssa

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

Vakiot ohjelmointikielissä

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

Viihdyttäviä meemejä HTTP-tilakoodista 501

Kirjoittaja: Tony Brüser
Kirjoittaja: Tony Brüser

Tony Brüser on innostunut web-kehittäjä, jolla on mieltymys HTTP-statuskoodeihin.

LinkedInGitHub