HTTP Response(응답) Headers 상세정보Cache-Controlw3.org의 정의를 보면, "The Cache-Control general-header field is used to specify directives which MUST be obeyed by all caching mechanisms along the request/response chain."
caching mechanisms(캐싱이론)은 网通이나 电信에과 같은 ISP에서 제정된 일부 룰을 따를수 있답니다. 예를 들어,
Cache-Control: max-age=3600, public
public는 모든 사람에게 캐싱을 허용, max-age는 캐싱이 허용된 최대 초수 3600초. 이런 방법들은 인터넷bandwith를 효율적으로 사용하게끔 하고 우리의 다운로드 시간을 많이 축소시키는 메카니즘이라고 생각하시면 됩니다. 허나 많은 싸이트들을 보면
Cache-Control: no-cache
라고 캐싱을 허용하지 않는것으로 세팅되었는데 그때그때 다르겠죠.
Content-Type문서의 "
mime-type", 웹문서의 타입을 뜻한다고 생각하시면 됩니다. html(혹은 html로 출력되는 php 등)은
Content-Type: text/html; charset=UTF-8
gif이미지 파일은
Content-Type: image/gif
pdf파일은
Content-Type: application/pdf
PHP에서는 file_info()함수로 해당 mime-type은 엿볼수 있습니다.
Content-Disposition이 헤더는 새로운 창에서 파일 다운로드를 시도여부를 가르키고 있습니다. 아래와 같은 헤더는 그 아래 이미지와 같은 메시지창을 유발시키고 있습니다.
Content-Disposition: attachment; filename="download.zip"
물론 Content-Type도 동시에 발생하구요
Content-Type: application/zip
Content-Disposition: attachment; filename="download.zip"
Content-Length우리의 웹브라우저가 받을 내용의 사이즈를 byte단위로 가르키는 헤더입니다.
Content-Length: 89123
우리가 다운할때 다운하려는 파일의 사이즈를 알고 있는 원인이 바로 여기에 있습니다.
만약 웹서버가 Content-Length헤더를 사용하지 않는다면, 우리는 현재까지 얼마만큼 다운했는지만 알게 되고 총사이즈는 모르게 되죠. 아래처럼,
Etag캐싱을 위해 생기는 또 다른 한 헤더.
Etag: "pub1259380237;gz"
해당 문서의 최종 수정날자, 사이즈, md5등 내용이 담겨 있습니다.
Last-Modified이름 그대로 마지막 수정일자. GMAT format로 표현.
Last-Modified: Sat, 28 Nov 2009 03:50:37 GMT
Locationredirection에 응용됩니다. HTTP Status Code가 당연히 301혹은 302로 재정의 되고 다시 요청을 하게 됩니다.
HTTP/1.x 301 Moved Permanently
...
Location: http://net.tutsplus.com/
...
이런 식으로 말이죠.
Set-Cookie웹서버가 우리한테 쿠키를 설정하도록 지시하는 부분.
Set-Cookie: skin=noskin; path=/; domain=.amazon.com; expires=Sun, 29-Nov-2009 21:42:28 GMT
Set-Cookie: session-id=120-7333518-8165026; path=/; domain=.amazon.com; expires=Sat Feb 27 08:00:00 2010 GMT
PHP에서 우리는 임의대로 setcookie("TestCookie", "foobar"); 이런 식으로 세팅하게 되면
Set-Cookie: TestCookie=foobar
이런 헤더를 받게 되죠.
WWW-Authenticate사용자 검증을 위한 헤더입니다. 보통 이런 창이 뜨시는 걸 보게 되면 여기에 해당합니다.
WWW-Authenticate: Basic realm="Restricted Area"
Content-EncodingContent-Encoding: gzip
인코딩방식을 제시해주는 부분입니다.
##
## 서투른 번역에 불구하고 구독해주셔서 감사합니다.
##