사이트 URL을 요청하면 로그에 HTTP 상태코드가 표시됩니다. 상태코드 200은 문제없이 정상적으로 응답함을 의미합니다. 간혹 상태코드 304도 발견된다. 문제가 있는 건가 싶은 생각이 들 수도 있지만, 304는 에러가 발생한 게 아니라 요청을 했으나 페이지의 상태가 변경된 게 없다(not modified)는 뜻입니다. 예를 들어, 페이지를 새로고침(F5)하면 발생할 수 있는 상태코드입니다. 분명 상태코드가 200인데 사이트에 코딩된 UI가 안 보이는 경우가 간혹 있습니다. IE 같은 브라우저에서 지원하지 않는 기능이 담겨 있으면 그런 상황이 발생할 수 있습니다. 그럴 때 화면을 새로고침 시도하면 304 상태코드가 로그에 남는습니다. 그 로그를 보고 에러가 발생했다고 생각하면 잘못된 판단이 됩니다.
HTTP(Hypertext Transfer Protocol)는 HTML 같은 문서를 전송하기 위한 응용 프로그램 계층 프로토콜이다. 웹 브라우저와 서버 간 통신을 위해 만들어졌다. 클라이언트가 요청(request) 하면 서버는 응답(response)하는 구조를 가진 클라이언트-서버 모델을 따른다. HTTP 요청 프로토콜 구조 HTTP 요청 프로토콜 구조는 start line, HTTP headers, body로 구분된다. start line에는 요청타입 / URI / HTTP버전 이 차례로 나열된다. Ex) GET http://developer.mozilla.org/en-US/docs/Web/HTTP/Messages HTTP/1.1 요청 타입은 일반적으로 GET, POST 중 하나가 온다. GET vs ..