[CS] 상태코드 모음 (HTTP status code) / 학습 노트
쿠키 (Cookie)
인터넷 웹 사이트의 방문 기록을 남겨 사용자와 웹 사이트 사이를 매개해 주는 정보. 웹 애플리케이션에서 ID와 패스워드를 입력하고 로그인했을 때 이용자로부터의 액세스를 식별하기 위해 사용.
HTTP (Hypertext Transfer Protocol)
웹사이트 열람에 사용되는 프로토콜. 하이퍼텍스트를 전송하는 프로토콜.
하이퍼텍스트
HTML로 적은 문서. 링크를 클릭하면 다른 페이지로 잇따라 점프할 수 있는 구조로 된 문서.
HTTPS (Hypertext Transfer Protocol Secure)
HTTP에 암호화 등의 시큐리티 기능을 추가한 프로토콜.
http status code
서버와 클라이언트는 웹페이지의 정보를 제대로 받았는지를 송수신 하게 되는데, 이렇게 필요한 정보들을 헤더값이라고 함. 이 헤더값을 의미함.
HTTP의 status code (현황 부호, 에러 코드)
100번 대는 정보, 200번 대는 성공, 300번 대는 리다이렉트(Redirection, 재지정), 400번 대는 클라이언트 에러, 500번 대는 서버 에러를 의미. 값에 따라 브라우저의 처리가 변함.
100 : Continue, 요청 메시지의 첫부분이 서버에 도착했고 클라이언트는 계속 요청 가능
101 : Switching Protocols, 서버는 Upgrade 헤더에 정의된 프로토콜을 변환하기 위해 클라이언트 요청수락
200 : OK, 에러없이 전송 성공 즉 요청 성공
201 : Created, 새로운 URL 생성
202 : Accepted, 서버가 클라이언트의 명령을 받음. (요청 수락, 바로 실행되지는 않음)
203 : Non-authoritavive Information, 서버가 클라이언트 요구 중 일부만 전송
204 : Non Content, 클라이언트 요구를 처리했으나 헤더의 바디 부분에 전송할 데이터가 없음.
205 : Reset Content
206 : Partial Content
300 : Multiple Choisces, 최근에 옮겨진 데이터를 요청, 요청된 URL 이 여러 개
301 : Moved Permanently, 요구한 데이터를 변경된 임시 URL에서 찾음. 요청된 URL 이 존재 않음
302 : Moved Permanently, 요구한 데이터가 변경된 URL에 있음을 명시. 요청된 URL 으로 이동
303 : See Other, 요구한 데이터를 변경하지 않았기 때문에 문제가 있음.
304 : Not modified, 문서가 수정되지 않음
305 : Use Proxy
400 : Bad Request, 요청실패. 문법상 오류가 있어 서버가 요청사항을 이해하지 못함. 요청 메시지의 문법 오류.
401 : Unauthorized, 요청 페이지 내 클라이언트 인증 오류
401.1 : Unauthorized, 권한 없음 (접속실패) 이 에러는 서버에 로그온 하려는 요청사항이 서버에 들어있는 권한과 비교했을 때 맞지 않을 경우 발생. 이 경우, 여러분이 요청한 자원에 접근할 수 있는 권한을 부여받기 위해 서버 운영자에게 요청해야 함.
401.2 : Unauthorized, 권한 없음(서버설정으로 인한 접속 실패) 이 에러는 서버에 로그온 하려는 요청사항이 서버에 들어있는 권한과 비교했을 때 맞지않을 경우 발생. 이것은 일반적으로 적절한 www-authenticate head field를 전송하지 않아서 발생.
401.3 : Unauthorized, 권한 없음(자원에 대한 ACL에 기인한 권한 없음) 이 에러는 클라이언트가 특정 자원에 접근할 수 없을 때 발생. 이 자원은 페이지가 될 수도 있고 , 클라이언트의 주소 입력란에 명기된 파일일 수도 있다. 아니면 클라이언트가 행당 주소로 들어갈 때 이용되는 또 다른 파일일 수 있음. 여러분이 접근할 전체 주소를 다시 확인해 보고 웹 서버 운영자에게 여러분이 자원에 접근할 권한이 있는지를 확인.
401.4 : Unauthorized, 권한 없음(필터에 의한 권한 부여 실패) 이 에러는 웹 서버가 서버에 접속하는 사용자들을 확인하기 위해 설치한 필터 프로그램이 있음을 의미. 서버에 접속하는데 이용되는 인증 과정이 이런 필터 프로그램에 의해 거부됨.
401.5 : Unauthorized, 권한 없음(ISA PI/CGI 애플리케이션에 의한 권한부여 실패) 이 에러는 여러분이 이용하려는 웹 서버의 어드레스에 ISA PI나 CGI프로그램이 설치되어 있어 사용자의 권한을 검증하고 있음을 의미. 서버에 접속하는 데 이용되는 인증 과정이 이 프로그램에 의해 거부됨.
402 : Payment Required, 예약됨.
403 : Forbidden, 서비스 거부 (방화벽에서 IP, Port 가 막혔을 경우, 라우팅이 잘못되었을 경우)
403.1 : Forbidden, 금지(수행접근 금지) 이 오류는 CGI나 ISAPI, 혹은 수행시키지 못하도록 되어있는 디렉토리 내의 실행 파일을 수행시키려고 했을 때 발생.
403.2 : Forbidden, 금지(읽기 접근 금지) 이 에러는 브라우저가 접근한 디렉토리에 가용한 디폴트 페이지가 없을 경우에 발생. 아니면 Eecute나 Script로 분한이 부여된 디렉토리에 들어있는 HTML페이지를 보려했을 때 발생.
403.4 : Forbidden, 금지(SSL 필요함) 이 에러는 여러분이 접근하려는 페이지가 SSL로 보안유지 되고 있는 것일 때 발생. 이것을 보기 위해서 여러분은 주소를 입력하기 전에 먼저 SSL을 이용할 수 있어야 함.
403.5 : Forbidden, 금지 (SSL 128필요함) 이 에러는 접근하려는 페이지가 SSL로 보안유지 되고 있는 것일 때 발생. 이 자원을 보기 위해서는 여러분의 브라우저가 SSL의 행당 레벌을 지원해야 함. 여러분의 브라우저가 128비트의 SSL을 지원하는 지를 확인.
403.6 : Forbidden, 금지(IP 주소 거부됨) 이 에러는 서버가 사이트에 접근이 허용되지 않은 IP주소를 갖고 있는데, 사용자가 이 주소로 접근하려 했을 때 발생.
403.7 : Forbidden, 금지(클라이언트 확인 필요) 이 에러는 여러분이 접근하려는 자원이 서버가 인식하기 위해 여러분의 브라우저에게 클라이언트 SSL을 요청하는 경우 발생. 이것은 여러분이 자원을 이용할 수 있는 상용자임을 입증하는데 사용됨.
403.8 : Forbidden, 금지 (사이트 접근 거부됨) 이 에러는 웹 서버가 요청사항을 수행하고 있지 않거나, 해당 사이트에 접근하는 것이 허락되지 않았을 경우 발생.
403.9 : Forbidden, 접근 금지(연결된 사용자수 과다) 이 에러는 웹서버 BUSY 상태에 있어서 여러분의 요청을 수행할수 없을 경우에 발생. 잠시 후에 다시 접근해 보도록 함.
403.10 : Forbidden, 접근금지(설정이 확실 하지 않음) 이 순간 웹 서버의 설정 쪽에 문제가 있을 때 발생.
403.11 : Forbidden, 접근금지(패스워드 변경됨) 이 에러는 사용자 확인단계에서 잘못된 패스워드를 입력했을 경우 발생. 페이지를 갱신한 후 다시 시도.
403.12 : Forbidden, 접근금지(Mapper 접근 금지됨) 여러분의 클이언트 인증용 맵이 해당 웹 사이트에 접근하는 것이 거부됨. 사이트 운영자에게 클라이언트 인증 허가를 요청. 또한 여러분은 여러분의 클라이언트 인증을 바꿀 수도 있음.
404 : Not Found, 문서를 찾을 수 없음. 웹 서버가 요청한 파일이나 스크립트를 찾지 못함. URL을 다시 잘 보고 주소가 올바로 입력되었는지 확인해 봄. 요청한 페이지가 없음.
- 해결방법 : 1. 도구 ▶ 인터넷옵션 ▶ 일반 ▶ 쿠키삭제, 파일삭제, 목록지우기
2. 도구 ▶ 인터넷옵션 ▶ 고급 ▶ [URL을 항상 UTF-8FH로 보냄] 체크 해제.
405 : Method not allowed, 메쏘드 허용안됨. 즉, 메소드를 지원하지 않음. Request 라인에 명시된 메쏘드를 수행하기 위해 해당 자원의 이용이 허용되지 않음. 여러분이 요청한 자원에 적절한 MIME 타입을 갖고 있는지 확인.
406 : Not Acceptable, 받아들일 수 없음. 요청한 형식 거부. 요청 사항에 필요한 자원은 요청 사항으로 전달된 Acceptheader에 따라 "Not Acceptable"인 내용을 가진 Response 개체만을 만들 수 있음.
407 : Proxy Authentication Required, 대리(Proxy) 인증이 필요함. 해당 요청이 수행되도록 proxy 서버에게 인증을 받아야 함. proxy서버로 로그온 한 후에 다시 시도해 봄.
408 : Request timeout, 요청시간이 지남.
409 : Conflict
410 : Gone, 영구적으로 사용할 수 없음.
411 : Length Required
412 : Precondition Failed, 선결조건 실패. Request-header field에 하나 이상에 선결조건에 대한 값이 서버에서 테스트 결과 FALSE로 나왔을 경우에 발생.
413 : Request entity too large
414 : Request-URI too long, 요청한 URI가 너무 김. 요청한 URI가 너무 길어서 서버가 요청 사항의 이행을 거부함. 이렇게 희귀한 상황은 아래와 같은 경우에만 발생함.
- 클라이언트가 긴 탐색용 정보를 가지고 POST 요청을 GET으로 부적절하게 전환.
- 클라이언트가 Redirection문제를 접함.
- 서버가, 몇몇 서버가 사용하고 있는 요청한 URI 를 읽고 처리하는 고정된 길이의 메로리 버퍼를 이용해 보안체계에 들어가려는 클라이언트에 의한 공격을 받음.
415 : Unsupported media type
500 : Internal Server Error, 서버 내부 오류. 메시지 손상과 같은 오류 발생. 웹 서버가 요청사항을 수행할 수 없음.
501 : Not Implemented, 적용안됨. 요청된 메소드를 수행 불가능. 웹 서버가 요청사항을 수행하는 데 필요한 기능을 지원하지 않음. 에러가 발생한 URL을 확인한 후에, 문제가 지속될 경우에는 웹 서버 운영자에게 연락.
502 : Bad gateway, 게이트웨이 상태 나쁨. 서버의 과부하 상태Gateway나 proxy로 활동하고 있는 서버가 요구 사항을 접수한 upstream 서버로부터 불명확한 답변을 접수 했을 때 발생. 만약 문제가 지속된다면 웹 서버 운영자와 상의.
503 : Service Unavailable, (서비스 불가능) 이 에러는 서비스가 현재 멈춘 상태 또는 현재 일시적인 과부하 또는 관리상황일 때 발생
504 : Gateway timeout
505 : HTTP Version Not Supported