티스토리 뷰
발생일: 2009.08.21
문제:
사이트의 http 요청/응답 정보를 모니터링 하다 보니,
304 Not Modified 요청 정보가 보인다.
수정되지 않은 응답이란 얘기였던 것 같은데, 정확한 의미가 뭘까...?
해결책:
브라우저가 서버에 GET 요청을 보낼 때,
요청하는 정보를 이미 디스크에 가지고 있을 경우(캐시되어 있는 경우)
브라우저는 이 데이터가 변경되었는지 여부를 확인하는 요청을 보내게 된다.
이와 같은 요청을 Conditional Get Request 라고 하며,
서버는 요청 데이터가 변경되지 않았을 경우 응답 코드로 304 (Not Modified) 를 리턴한다.
물론, 데이터가 변경되었다면 변경된 데이터를 응답으로 보내게 된다.
---
2015.07.01 업데이트:
문제:
사이트의 http 요청/응답 정보를 모니터링 하다 보니,
304 Not Modified 요청 정보가 보인다.
수정되지 않은 응답이란 얘기였던 것 같은데, 정확한 의미가 뭘까...?
해결책:
브라우저가 서버에 GET 요청을 보낼 때,
요청하는 정보를 이미 디스크에 가지고 있을 경우(캐시되어 있는 경우)
브라우저는 이 데이터가 변경되었는지 여부를 확인하는 요청을 보내게 된다.
이와 같은 요청을 Conditional Get Request 라고 하며,
서버는 요청 데이터가 변경되지 않았을 경우 응답 코드로 304 (Not Modified) 를 리턴한다.
물론, 데이터가 변경되었다면 변경된 데이터를 응답으로 보내게 된다.
---
2015.07.01 업데이트:
크롬에서 캐시 관련 이슈가 있었다면, 아래 포스트를 참고해보세요.
- 웹킷의 리소스 동작 방식: http://ohgyun.com/604
참고 자료:
- Conditional Get Request 에 대해 굉장히 잘 정리해 둔 블로그(영문) 가 있다.
- 넥슨 사이트 성능 튜닝 에 대한 글: 전반적인 HTTP 흐름에 관한 유용한 정보를 얻을 수 있다.
- W3 Http Status Definitions : HTTP 응답 코드에 대한 정의서 (영문)
- HTTP Protocol Spec
반응형
댓글
공지사항