HTTP 요청 소켓 프로그래밍을 해본 사람이라면 누구나 통신 프로토콜을 설계할 때 "메시지 헤더/메시지 본문" 분할 방법이 매우 일반적으로 사용된다는 것을 알고 있습니다. 메시지 헤더는 메시지의 목적을 상대방에게 알려주고, 메시지 본문은 메시지 본문입니다. 상대방에게 어떻게 해야 하는지 알려준다.
브라우저가 웹 서버에 서비스를 요청하면 오류가 발생할 수 있습니다. 따라서 다음과 같은 일련의 상태 메시지를 반환할 수 있습니다.
1xx: 정보
메시지: |
설명: |
100 계속 |
서버는 요청의 일부만 수신하지만 서버가 요청을 거부하지 않으면 클라이언트는 요청의 나머지 부분을 계속 보내야 합니다. |
101 스위칭 프로토콜 |
서버 변환 프로토콜: 서버는 클라이언트의 요청을 준수하고 다른 프로토콜로 변환합니다. |
2xx: 성공
메시지: |
설명: |
200 OK |
요청 성공(GET 및 POST 요청에 대한 응답 문서가 뒤따릅니다.) |
201명이 생성됨 |
요청이 생성되고 새로운 리소스가 생성됩니다. |
202명 수락 |
처리요청이 접수되었으나 처리가 완료되지 않았습니다. |
203 신뢰할 수 없는 정보 |
문서는 정상적으로 반환되었으나, 문서 사본을 사용하기 때문에 일부 응답 헤더가 정확하지 않을 수 있습니다. |
204 콘텐츠 없음 |
새 문서가 없습니다. 브라우저는 원본 문서를 계속 표시해야 합니다. 이 상태 코드는 사용자가 페이지를 정기적으로 새로 고치고 서블릿이 사용자의 문서가 충분히 최신인지 확인할 수 있는 경우 유용합니다. |
205 콘텐츠 재설정 |
새 문서가 없습니다. 하지만 브라우저는 표시되는 내용을 재설정해야 합니다. 브라우저가 양식 입력 내용을 지우도록 강제하는 데 사용됩니다. |
206 일부 콘텐츠 |
클라이언트는 Range 헤더와 함께 GET 요청을 보내고 서버는 이를 완료합니다. |
3xx: 리디렉션
메시지: |
설명: |
300개의 객관식 |
다양한 선택. 연결된 목록. 사용자는 링크를 선택하여 목적지에 도달할 수 있습니다. 최대 5개의 주소가 허용됩니다. |
301 영구 이전 |
요청하신 페이지가 새 URL로 이동되었습니다. |
302개 발견 |
요청하신 페이지가 새 URL로 임시 이동되었습니다. |
303 기타 보기 |
요청한 페이지는 다른 URL에서 확인하실 수 있습니다. |
304 수정되지 않음 |
문서가 예상대로 수정되지 않았습니다. 클라이언트는 버퍼링된 문서를 가지고 있으며 조건부 요청을 합니다(일반적으로 클라이언트가 지정된 날짜보다 최신 문서만 원함을 나타내는 If-Modified-Since 헤더를 제공하여). 서버는 원래 버퍼링된 문서를 계속 사용할 수 있음을 클라이언트에게 알립니다. |
305 프록시 사용 |
클라이언트가 요청한 문서는 Location 헤더에 지정된 프록시 서버를 통해 검색되어야 합니다. |
306 미사용
|
이 코드는 이전 버전에서 사용되었습니다. 더 이상 사용되지 않지만 코드는 여전히 유지됩니다. |
307 임시 리디렉션 |
요청하신 페이지가 일시적으로 새 URL로 이동되었습니다. |
4xx: 클라이언트 오류
메시지: |
설명: |
400개의 잘못된 요청 |
서버가 요청을 이해하지 못했습니다. |
401 무단 |
요청한 페이지에는 사용자 이름과 비밀번호가 필요합니다. |
402 결제 필수 |
이 코드는 아직 사용할 수 없습니다. |
403 금지 |
요청한 페이지에 대한 접근이 금지되어 있습니다. |
404 찾을 수 없음 |
서버가 요청한 페이지를 찾을 수 없습니다. |
405 메서드가 허용되지 않음 |
요청에 명시된 방법은 허용되지 않습니다. |
406 허용되지 않음 |
서버에서 생성된 응답이 클라이언트에서 허용되지 않습니다. |
407 프록시 인증 필요 |
사용자는 먼저 프록시 서버를 사용하여 인증해야 요청이 처리됩니다. |
408 요청 시간 초과 |
요청이 서버의 대기 시간을 초과했습니다. |
409 갈등 |
충돌로 인해 요청을 완료할 수 없습니다. |
410 사라짐 |
요청한 페이지를 사용할 수 없습니다. |
411 길이 필수 |
"콘텐츠 길이"가 정의되지 않았습니다. 이 콘텐츠가 없으면 서버는 요청을 수락하지 않습니다. |
412 전제조건 실패 |
요청의 전제 조건이 서버에서 실패한 것으로 평가되었습니다. |
413 요청 엔터티가 너무 큼 |
요청한 엔터티가 너무 커서 서버가 요청을 수락하지 않습니다. |
414 요청 URL이 너무 깁니다 |
URL이 너무 길어서 서버가 요청을 수락하지 않습니다. 이는 POST 요청이 매우 긴 쿼리 정보를 포함하는 GET 요청으로 변환될 때 발생합니다. |
415 지원되지 않는 미디어 유형 |
미디어 유형이 지원되지 않아 서버가 요청을 수락하지 않습니다. |
416 |
서버가 요청에서 클라이언트가 지정한 Range 헤더를 충족할 수 없습니다. |
417 기대 실패 |
|
5xx: 서버 오류
메시지: |
설명: |
500 내부 서버 오류 |
요청이 완료되지 않았습니다. 서버에 예상치 못한 상황이 발생했습니다. |
501 구현되지 않음 |
요청이 완료되지 않았습니다. 서버가 요청한 기능을 지원하지 않습니다. |
502 나쁜 게이트웨이 |
요청이 완료되지 않았습니다. 서버가 업스트림 서버로부터 잘못된 응답을 받았습니다. |
503 서비스를 이용할 수 없습니다 |
요청이 완료되지 않았습니다. 서버가 일시적으로 과부하되었거나 다운되었습니다. |
504 게이트웨이 시간 초과 |
게이트웨이 시간 초과. |
505 HTTP 버전은 지원되지 않습니다 |
서버가 요청에 지정된 HTTP 프로토콜 버전을 지원하지 않습니다. |
관련 권장 사항:
HTTP 예비 주석 - Yitoem
PHP HTTP 헤더 수정 -HTTP 헤더 수정
위 내용은 HTTP 상태 메시지를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!