HTTP 상태 코드 416의 사양
416 Range Not Satisfiable 상태 코드는 요청의 Range 헤더 필드(섹션 3.1)에 있는 범위 중 어느 것도 선택한 리소스의 현재 범위와 겹치지 않거나 잘못된 범위 또는 작거나 겹치는 범위의 과도한 요청으로 인해 요청된 범위 집합이 거부되었음을 나타냅니다.
바이트 범위의 경우 현재 범위와 겹치지 않는다는 것은 모든 byte-range-spec 값의 첫번째 바이트 위치가 선택한 표현의 현재 길이보다 크다는 것을 의미합니다. 이 상태 코드가 바이트 범위 요청에 대한 응답으로 생성되면 발신자는 선택한 표현의 현재 길이를 지정하는 Content-Range 헤더 필드를 생성해야 합니다(섹션 4.2).
예를 들어:
HTTP/1.1 416 Range Not Satisfiable
Date: Fri, 20 Jan 2012 15:41:54 GMT
Content-Range: 바이트 */47022
주: 서버는 범위를 무시할 수 있기 때문에 많은 구현은 단순히 선택한 표현 전체를 200(OK) 응답으로 응답할 것입니다. 이는 부분적으로는 대부분의 클라이언트가 작업을 완료하기 위해 200(OK)을 받을 준비가 되어 있기 때문이며(효율성은 떨어지지만), 부분적으로는 클라이언트가 완전한 표현을 받을 때까지 유효하지 않은 부분 요청을 중단하지 않을 수 있기 때문입니다. 따라서 클라이언트는 416 Range Not Satisfiable 응답이 가장 적절할 때에도 416 Range Not Satisfiable 응답을 받는 것에 의존해서는 안 됩니다.
출처 / 인용 출처: 416 Range Not Satisfiable HTTP 상태 코드는 RFC7233 섹션 RFC7233에 명시되어 있습니다.
PHP로 416 상태 코드를 던지는 방법은 무엇인가요?
웹 페이지에 HTTP 상태 코드 416를 던지려면 PHP 함수 http_response_code를 사용할 수 있습니다. 구문은 다음과 같습니다: http_response_code(416) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
416 HTTP 상태 코드 테스트
클라이언트 측에서 HTTP 상태 코드(이 경우 416 Range Not Satisfiable) 및 기타 정보를 표시하려면 F12를 사용하여 개발 콘솔을 열어야 합니다. 그런 다음 "네트워크" 탭으로 이동합니다. 이제 페이지를 열면 네트워크 탭에 웹사이트(예: index.php)가 표시됩니다. 이를 선택한 다음 허더 섹션을 선택해야 합니다. 그러면 사용자에게 다음과 같은 결과가 표시됩니다:
URL: https://http-statuscode.com/errorCodeExample.php?code=416
상태: 416 Range Not Satisfiable
그: Network
IP 주소: XX.XX.XX.XX
상태 코드 416에 대한 오류 페이지를 직접 만드는 방법
Apache Webserver
웹 서버 "아파치"는 인터넷에서 가장 일반적인 웹 서버 중 하나입니다. "Apache"에서 416 Range Not Satisfiable 오류 페이지를 직접 생성하려면 다음 파일에서 다음과 같이 변경해야 합니다.
NGINX Webserver
웹 서버 "Apache"와 마찬가지로 "NGINX"도 인터넷에서 널리 사용됩니다. "NGINX"에서 416 Range Not Satisfiable 오류 페이지를 직접 생성하려면 다음 파일에서 다음과 같이 변경해야 합니다.
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