목록전체 글 (74)
과거의 내가 미래의 나에게
* HTTP/1.1을 기준으로 작성되었습니다. 일반 헤더 필드 1. Cache-Control HTTP 요청 시 매번 서버에게 보내지 않고 받았던 HTTP 응답을 재활용할 수가 있다. 즉 HTTP 요청/응답과 관련하여 캐싱을 할 수 있다는 것인데, 이와 관련된 헤더가 Cache-Control이다. Cache-Control은 캐싱과 관련된 여러 명령(Directive)을 할 수 있는 헤더 필드이다. Cache-Control의 값에다 명령을 나열하여 캐싱을 어떻게 할 지를 결정하는데, HTTP 요청과 응답 모두 사용할 수 있지만 각각 나열할 수 있는 명령들이 조금씩 다르다. Cache-Control과 관련된 더 자세한 내용은 지금 이론으로 공부해봤자 결국 도루묵이 될 것 같아서 일단은 해당 블로그를 통해 간단..
HTTP 프로토콜의 동작 원리에서 클라이언트가 HTTP 요청(리퀘스트) 메시지를 먼저 보내고, 서버가 그에 따른 결과(리스폰스)메시지를 보내준다고 했다. 이 때, 클라이언트와 서버는 서로 어떤 내용이 담긴 메시지를 보내주는 것일까? 오늘은 HTTP 메시지에 대해서 공부해보겠다. 0. 메시지 헤더 원문을 보기 위한 여정: 와이어샤크 HTTP 메시지를 살펴보기 앞서, 책이나 각종 글에 나와있는 HTTP 헤더 메시지 원문을 보고 싶었는데 개발자 도구로는 원문이 아니라 일부 요약된 듯한 내용만 있어서 이 원문을 찾느라 방황했다. 원래라면 이런 내용은 글의 주제에 벗어날 수 있으니 생략해야했지만 싸돌아다닌 시간이 억울해서 기록 겸 적어놓는다. 언급했 듯 개발자 도구에서는 대부분의 웹사이트에서는 헤더 메시지 원문을..
HTTP 동작 과정 클라이언트가 서버에 리소스를 요청하고 서버가 해당 요청을 처리한 후 클라이언트에 응답을 보내는 과정을 정리해본다. 1. 클라이언트의 요청 준비 사용자가 원하는 페이지를 받기 위해 웹 브라우저에 URL을 입력할 것이다. 웹 브라우저는 URL을 입력받으면 DNS 서버로부터 URL에 해당하는 IP 주소를 받아오는 등 사용자가 원한 웹 페이지를 특정하기 위한 정보를 준비한다. 2. TCP 연결 설정 정보를 다 모았다면 이제 해당 웹페이지가 들어있는 웹 서버를 찾아나서야 할 것이다. 전 세계에는 수많은 웹서버가 있으므로 이를 찾기 위해서는 먼저 전 세계의 웹 서버를 찾을 수 있는 인터넷에 접속해야할 것이다. 이를 TCP 연결 설정이라 하며, TCP 연결 설정을 통해 원하는 웹 서버를 찾은 후 ..
웹에 대해서 공부해야겠다 생각한 이래로 DNS에 대해서는 따로 살펴보았고, 이제 HTTP에 대해서 살펴보려 한다. DNS 처럼 인터넷에서 하나하나 찾아보기엔 양이 방대하여 책을 구매해서 해당 책을 기준으로 하여 학습할 것이다. 이번 글에서는 HTTP를 공부하기 전에 그와 연관된 지식에 대해서 배워보겠다. 이 블로그에서 적을 HTTP 학습글 시리즈는 "그림으로 배우는 HTTP&Network Basic" 이라는 책을 기반으로 했다. 해당 책은 아직 HTTP 2.0도 나오지 않은 시점에서 서술한 책이므로 다소 최신과 먼 정보가 있을 수 있으므로 참고하자. HTTP란 HyperText Transfer Protocol의 준말로 하이퍼텍스트는 문서(웹페이지)끼리 이동할 수 있도록 해주는 텍스트이며 프로..
현재 진행중인 프로젝트의 방대한 코드를 MFA 방식으로 나누기 위해 여러가지 방법을 알아보다 Iframe을 활용한 방식이 있음을 발견하여 iframe에 대해 공부할 필요성을 느껴서 이 글을 쓴다. HTML iframe이란 inline frame의 약자로, 웹 페이지 안에 또 다른 웹페이지를 보여주고자 할 때 사용한다. 사용 방법은 src 태그를 활용하여 원하는 주소를 연결시키면 된다. iframe을 사용한다면 새로운 컨텐츠를 쉽게 추가 할 수 있으며, 별도의 페이지 이동이 없으므로 사용자한테 더 풍부한 화면을 보여줄 수 있다. 하지만 HTML 코드량이 너무나도 방대해지고, 또한 iframe으로 삽입된 컨텐츠는 크롤링하지 못하는 검색엔진도 존재하기에 SEO 측면에서 좋지 않다. 이 밖에도 사용성에 불편함이..