416

Range Not Satisfiable

Oficjalny
Obszary objęte wnioskiem nie mogą być dostarczone

Specyfikacja kodu statusu HTTP 416

Kod statusu 416 Range Not Satisfiable wskazuje, że żaden z zakresów w polu nagłówka Range żądania (sekcja 3.1) nie pokrywa się z bieżącym zakresem wybranego zasobu lub że zestaw żądanych zakresów został odrzucony z powodu nieprawidłowych zakresów lub nadmiernego żądania małych lub nakładających się zakresów.

W przypadku zakresów bajtowych, nie nakładanie się na bieżący zakres oznacza, że pierwsze bajty wszystkich wartości bajtowych (byte-range-spec) były większe niż bieżąca długość wybranego odwzorowania. Gdy ten kod statusu jest generowany w odpowiedzi na żądanie zakresu bajtów, nadawca POWINIEN wygenerować pole nagłówka Content-Range określające bieżącą długość wybranej reprezentacji (sekcja 4.2).

Na przykład:

HTTP/1.1 416 Range Not Satisfiable
Data: Fri, 20 Jan 2012 15:41:54 GMT
Content-Range: bytes */47022

Uwaga: Ponieważ serwery mogą swobodnie ignorować Range, wiele implementacji po prostu odpowie całą wybraną reprezentacją w odpowiedzi 200 (OK). Jest tak częściowo dlatego, że większość klientów jest przygotowana do otrzymania 200 (OK), aby zakończyć zadanie (choć mniej wydajnie), a częściowo dlatego, że klienci mogą nie przestać wykonywać nieważnego częściowego żądania, dopóki nie otrzymają kompletnej reprezentacji. Tak więc klienci nie mogą polegać na otrzymaniu odpowiedzi 416 Range Not Satisfiable, nawet gdy jest to najbardziej odpowiednie.

Źródło / Cytat z: Kod statusu 416 Range Not Satisfiable HTTP jest określony przez sekcję 4.4 z RFC7233.

Jak wyrzucić kod statusu 416 za pomocą PHP?

Aby wyrzucić na stronę internetową kod statusu HTTP 416, można użyć funkcji PHP http_response_code. Składnia jest następująca: http_response_code(416) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testowanie kodu 416 statusu HTTP

Aby móc wyświetlić kod statusu HTTP (w tym przypadku 416 Range Not Satisfiable) i inne informacje po stronie klienta, należy otworzyć konsolę programistyczną za pomocą F12. Następnie należy przejść do zakładki "Network". Teraz można otworzyć stronę, w zakładce "Network" powinna być widoczna strona (przykładowy index.php). Należy ją zaznaczyć, a następnie wybrać sekcję Herder. Użytkownik zobaczy wtedy następujący wynik:

Kod statusu 416 Range Not Satisfiable
Przegląd
URL: https://http-statuscode.com/errorCodeExample.php?code=416
Status: 416 Range Not Satisfiable
Te: Network
Adres IP: XX.XX.XX.XX
Kod statusu 416 Range Not Satisfiable

Jak stworzyć własną stronę błędu dla kodu statusu 416

Stworzenie własnej strony błędu 416 Range Not Satisfiable jest stosunkowo proste zarówno w przypadku serwera "Apache" jak i "NGINX".

Apache Webserver

Serwer WWW "Apache" jest jednym z najczęściej spotykanych serwerów WWW w Internecie. Aby stworzyć własną stronę błędu 416 Range Not Satisfiable w "Apache", należy dokonać następującej zmiany w poniższym pliku.

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

NGINX Webserver

Podobnie jak serwer internetowy "Apache", "NGINX" jest również szeroko stosowany w Internecie. Aby stworzyć własną stronę błędu 416 Range Not Satisfiable w "NGINX", należy dokonać następującej zmiany w poniższym pliku.

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

Zgodność kodu statusu 416 z przeglądarką

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

Stałe w językach programowania

HttpStatusCode.RequestedRangeNotSatisfiable
http.StatusRequestedRangeNotSatisfiable
Response::HTTP_REQUESTED_RANGE_NOT_SATISFIABLE
httplib.REQUESTED_RANGE_NOT_SATISFIABLE
http.client.REQUESTED_RANGE_NOT_SATISFIABLE
http.HTTPStatus.REQUESTED_RANGE_NOT_SATISFIABLE
:requested_range_not_satisfiable
Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser jest entuzjastycznym twórcą stron internetowych z zamiłowaniem do kodów statusu HTTP.

LinkedInGitHub