416

Range Not Satisfiable

Официален
Заявените площи не могат да бъдат предоставени

Спецификация на HTTP код на състоянието 416

Код на състоянието 416 Range Not Satisfiable показва, че нито един от диапазоните в полето Range на заглавието на заявката (раздел 3.1) не се припокрива с текущия обхват на избрания ресурс или че заявеният набор от диапазони е бил отхвърлен поради невалидни диапазони или прекомерна заявка за малки или припокриващи се диапазони.

За байтовите диапазони непокриването на текущия обхват означава, че първият байт-позиция на всички стойности на спецификацията на байтовия диапазон е по-голям от текущата дължина на избраното представяне. Когато този код на състоянието се генерира в отговор на заявка за байтови обхвати, изпращачът ТРЯБВА да генерира поле на заглавието Content-Range, в което се посочва текущата дължина на избраното представяне (раздел 4.2).

Например:

HTTP/1.1 416 Range Not Satisfiable
Дата: пет, 20 януари 2012 г. 15:41:54 GMT
Content-Range: bytes */47022

Забележка: Тъй като сървърите могат да игнорират Range, много реализации просто ще отговорят с цялото избрано представяне в отговор 200 (OK). Това отчасти е така, защото повечето клиенти са готови да получат 200 (OK), за да изпълнят задачата (макар и по-малко ефективно), и отчасти защото клиентите може да не спрат да правят невалидна частична заявка, докато не получат пълно представяне. По този начин клиентите не могат да разчитат на получаването на отговор 416 Range Not Satisfiable, дори когато това е най-подходящо.

Източник / Цитат от: Кодът на състоянието 416 Range Not Satisfiable на HTTP е определен в раздел 4.4 на RFC7233.

Как да изхвърлим код на състоянието 416 с PHP?

За изхвърляне на HTTP статус код 416 на уеб страница може да се използва функцията http_response_code на PHP. Синтаксисът е следният: http_response_code(416) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Тестване на код 416 на състоянието HTTP

За да можете да показвате кода на състоянието на HTTP (в този случай 416 Range Not Satisfiable) и друга информация от страна на клиента, конзолата за разработка трябва да се отвори с F12. След това преминете към раздела "Мрежа". Сега страницата може да бъде отворена, като уебсайтът (пример index.php) трябва да се вижда в раздела "Мрежа". Той трябва да бъде избран и след това трябва да се избере разделът Herder. След това потребителят ще види следния резултат:

Код на състоянието 416 Range Not Satisfiable
Преглед
URL: https://http-statuscode.com/errorCodeExample.php?code=416
Статус: 416 Range Not Satisfiable
Тези: Network
IP адрес: XX.XX.XX.XX
Код на състоянието 416 Range Not Satisfiable

Как да създадете собствена страница за грешка с код на състоянието 416

Създаването на собствена страница за грешка 416 Range Not Satisfiable е сравнително лесно както с уеб сървърите "Apache", така и с "NGINX".

Apache Webserver

Уеб сървърът "Apache" е един от най-разпространените уеб сървъри в интернет. За да създадете своя собствена страница за грешка 416 Range Not Satisfiable в "Apache", трябва да се направи следната промяна в следния файл.

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

NGINX Webserver

Подобно на уеб сървъра "Apache", "NGINX" също се използва широко в интернет. За да създадете своя собствена страница за грешка 416 Range Not Satisfiable в "NGINX", трябва да се направи следната промяна в следния файл.

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

Съвместимост на кода на състоянието 416 с браузъра

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

Константи в езиците за програмиране

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
Автор: Tony Brüser
Автор: Tony Brüser

Тони Брусер е ентусиазиран уеб разработчик със склонност към HTTP кодовете за състояние.

LinkedInGitHub