Technique/WEB
HTTP 상태 코드
kaelina
2019. 9. 16. 16:39
반응형
서버에서의 처리 결과는 응답 메시지의 상태 라인에 있는 상태 코드를 보고 파악할 수 있다. 상태 코드는 세 자리 숫자로 되어 있는데 첫 번째 숫자는 HTTP 응답의 종류를 구분하는 데 사용하며, 나머지 두 개의 숫자는 세부적인 응답 내용의 구분을 위한 번호이다.
100 ~ 500 번대 상태 코드가 정의되어 있는데, 첫 번째 자리 숫자를 다섯 가지 분류로 나누어 사용한다.
메소드명 | 의미 | CRUD와 매핑되는 역할 |
1XX |
Informational |
임시적인 응답으로, 현재 클라이언트의 요청까지 처리되었으니 계속 진행하라는 의미이다. HTTP1.1 버전부터 추가되었다. |
2XX | Success(성공) | 클라이언트의 요청이 서버에서 성공적으로 처리되었다는 의미이다. |
3XX | Redirection (리다이렉션) |
완전한 처리를 위해서 추가적인 동작을 필요로 하는 경우입니다. 주로 서버의 주소 또는 요청한 URI의 웹 문서가 이동되었으니, 그 주소로 다시 시도해보라는 의미이다. |
4XX | Client Error (클라이언트 에러) |
없는 페이지를 요청하는 것처럼 클라이언트의 요청 메시지 내용이 잘못된 경우이다. |
5XX | Server Error (서버 에러) |
서버 측 사정에 의해서 메시지 처리에 문제가 발생한 경우이다. 서버의 부하, DB처리 과정 오류, 서버에서 익셉션이 발생하는 경우가 이에 해당한다. |
자주 사용되는 상태 코드
상태 코드 | 상태 텍스트 | 응답 문구 | 서버 측면에서의 의미 |
2xx | Success | 성공 | 클라이언트가 요청한 동작을 수산하여 이해했고, 승낙했으며 성공적으로 처리 했다. |
200 | OK | 성공 | 서버가 요청을 성공적으로 처리했다. |
201 | Created | 작성됨 | 요청이 처리되어서 새로운 리소스가 생성되었다. 응답 해더 Location에 새로운 리로스의 절대 URI를 기록 한다. |
202 | Accepted | 허용됨 | 요청은 접수했지만 처리는 완료되지 않았다. Client는 응답 헤더의 Location, Retry-After를 참고하여 다시 요청을 보낸다. |
3xx | Redirection | 리다이렉션 | 클라이언트는 요청을 마치기 위해 추가적인 동작을 취해야 한다. |
301 | Moved Permanently | 영구 이동 | 지정한 리소스가 새로운 URI로 이동했다. 이동할 곳의 새로운 RUI는 응답 헤더 Location에 기록한다. |
303 | See Other | 다른 위치 보기 | 다른 위치로 요청하라 요청에 대한 처리 결과를 응답 헤더 Location에 표시된 URI에서 GET으로 취득할 수 있다. 브라우저의 폼 요청을 POST로 처리하고 그 결과 화면으로 리다이렉트 시킬때 자주 사용하는 응답코드 이다. |
307 | Temporary Redirect | 임시 리다이렉션 | 임시로 리다이렉션 요청이 필요하다. 요청한 URI가 없으므로, 클라이언트는 메소드를 그대로 유지한 채 응답 헤더 Location에 표시된 다른 URI로 요청을 재종신할 필요가 있다. 클라이언트는 향후 요청 시 원래 위치를 계속해서 사용해야 한다. 302의 의미를 정확하게 쟂정의해서 HTTP/1.1의 307응답으로 추가되었다. |
4xx | Client Error | 클라이언트 에러 | 클라이언트의 요청에 오류가 있다. |
400 | Bad Request | 잘못된 요청 | 요청의 구문이 잘못되었다. 클라이언트가 모르는 4xx계열의 응답 코드가 반환된 경우에도 클라이언트는 400과 동일하게 처리하도록 규정하고 있다. |
401 | Unauthorized | 권한 없음 | 지정한 리소스에 대한 액세서 권한이 없다. 으압 헤더 WWW-Authenticate에 필요한 인증 방식을 지정한다. |
403 | Forbidden | 금지 됨 | 지정한 리소스에 대한 액세스가 금지되었다. 401 인증 처리 이외의 사유로 리소스에 대한 액세스가 금지되었음을 의미한다. 리소스의 존재 자체를 은폐하고 싶음 경우는 404응답 코드를 사용할 수 있다. |
404 | Not Found | 찾을 수 없음 | 지정한 리소스를 찾을 수 없다. |
5xx | Server Error | 서버 에러 | 클라이언트의 요청은 유효한데 서버가 처리에 실패했다. |
500 | Internal Server Error | 내부 서버 오류 | 서버쪽에서 에러가 발생했다. 클라이언트가 모르는 5xx계열의 응답 코드가 반환된 경우에도 클라이언트는 500과 동일하게 처리하도록 규정되고 있다. |
502 | Bad Gateway | 불량 게이트웨이 | 게이트웨이 또는 프록시 역할을 하는 서버가 그 뒷단의 서버로부터 잘못된 응답을 받았다. |
503 | Service Unavailable | 서비스 제공불가 | 현재 서버에서 서비스를 제공할 수 없다. 보통은 서버의 과부하나 서비스 점검 등 일시적인 상태이다. |
반응형