전체 글 176

HTTP 완벽 가이드 (21)

로그란?로깅을 하는 이유서버나 프록시의 문제 찾기웹 사이트 접근 통계 내기로깅하는 필드HTTP 메서드클라이언트와 서버의 HTTP 버전요청받은 리소스의 URL응답의 HTTP 상태 코드 → 요청이 성공적으로 이루어졌는지, 인증 시도가 실패했는지, 리소스를 찾았는지 등 어떤 일이 일어났었는지요청과 응답 메시지의 크기(모든 엔티티 본문을 포함) → 얼마나 많은 바이트를 안팎으로 송수신 / 얼마나 많은 바이트가 애플리케이션을 통해 전송되는지트랜잭션이 일어난 시간 → 문제가 발생 시, 그 시간에 받았던 요청을 찾는 데 사용함.Referer와 User-Agent 헤더 값HTTP 메서드, URL → 어떤 요청이 어떤 일을 하려고 했는지 가리킴URL은 웹 사이트의 특정 페이지가 얼마나 인기 있는지 추적하는 데 사용할 수..

HTTP 2025.03.18

HTTP 완벽 가이드 (20)

HTTP 메시지의 데이터는 여정 중에 많은 프로토콜에 의해 통제된다.리다이렉션 기술 → HTTP 메시지의 최종 목적지를 결정하는 네트워크 도구, 기법, 프로토콜메시지가 프락시, 캐시, 서버 팜의 특정 웹 서버 중 어디에서 끝나는지 판별하기 위한 용도리다이렉션 기법, load-balancing리다이렉션은 피할 수 없는 현실신뢰할 수 있는 HTTP 트랜잭션의 수행지연 최소화네트워크 대역폭 절약→ 여러 장소에 웹 콘텐츠 배포한 곳이 실패하면 다른 곳을 이용 → 신뢰성 개선가까운 리소스에 접근하여 빨리 받게 됨 → 응답시간도 줄여줌목적지 서버 분산 → 네트워크 혼잡도 감소리다이렉션 구현 ↔ 부하균형 : 서로 공존들어오는 메시지의 부하를 서버들의 집합에게 분산어떤 방식의 부하 균형이든 리다이렉션을 포함 → 들어오..

HTTP 2025.03.18

HTTP 완벽 가이드 (19)

FrontPage(FrontPage Server Extentions, FPSE)어디서든 배포한다서버 측 소프트웨어 제품군서버측 컴포넌트 + 웹 서버웹 사이트와 FrontPage를 구동시키는 클라이언트(이 확장 지원 클라이언트) 사이에서 필요한 변환 작업 수행FP 클라이언트와 FPSE 사이에서 사용하는 배포 프로토콜FrontPage 배포 프로토콜HTTP POST 요청 위에 RPC 계층 구현웹 사이트 문서 갱신, 검색 수행, 웹 개발자들 간 공동 작업FP 클라이언트가 서버에 명령을 보냄FrontPage RPCRPC 메서드와 그와 관련한 변수를 POST 요청의 본문에 기술해서 HTTP POST를 감싼다.통신 시작서버에 있는 대상 프로그램의 이름과 위치 결정특별한 GET 요청을 보냄 ⇒ POST 요청을 보낼 위..

HTTP 2025.03.18

HTTP 완벽 가이드 (18)

호스팅 서비스전용 호스팅ISP가 제공하는 전용 웹 호스팅 서비스에 가입해서 임대함.대량으로 서버 장비 구매 가능안정적, 검증된 저렴한 장비브라우저는 죠가 운영하고 있는 서버의 IP 주소에 요청가상 호스팅컴퓨터 한 대를 여러 명의 고객이 공유 → 공유 호스팅 또는 가상 호스팅이라고 부름각 웹 사이트는 다른 서버에서 호스팅하는 것처럼 보이지만, 실제로는 물리적으로 같은 서버에서 호스팅 됨.PC 한 대에 웹 사이트 수천 개 x → 서버 팜(복제 서버 더미)를 만들고 부하 분산호스트 정보가 없는 가상 서버 요청HTTP/1.0 명세는 공용 웹 서버가 호스팅하고 있는 가상 웹 사이트에 누가 접근하고 있는지 식별하는 기능을 제공하지 않는다.요청은 URL의 경로 컴포넌트만 전송함.동작하게 하기초기 명세는 가상 호스팅을..

HTTP 2025.03.18

HTTP 완벽 가이드 (17)

내용협상 : 하나의 URL이 여러 가지 리소스 중 적합한 것에 대응되도록 함트랜스코딩 : HTTP 클라이언트와 서버 사이의 내용 협상에 대한 응답에서 수행됨커스터마이징 페이지 생성 → ex) 구형 단말기에 맞도록 HTML에서 WML 페이지로 변환내용 협상 기법클라이언트 주도 기법, 서버 주도 기법, 투명 기법서버는 선택지를 주고, 클라이언트가 선택서버가 요청 헤더를 검증해서 어떤 버전을 제공할지 결정투명한 중간 장치(주로 프락시 캐시)가 서버를 대신하여 협상클라이언트 주도 기법장점 : 서버 입장에서 가장 구현하기 쉽고, 클라이언트는 최선의 선택 가능단점각 페이지에 두 번의 요청 필요 → 한번은 가능한 페이지 목록, 두번째는 선택한 사본 얻기선택지 표현 방법여러 가지 버전에 대한 링크와 각각에 대한 설명이..

HTTP 2025.03.18

HTTP 완벽 가이드 (16)

MIME 차셋 태그문자집합을 의미하는 것이 결코 아님데이터 비트를 고유한 문자의 코드로 매핑하는 알고리즘의 이름 → 문자 인코딩 구조 + 코딩된 문자집합글리프각 글자를 그리는 특정한 방법코드 공간US-ASCII0-127만 사용코드 공간 전체를 표현하는데 7비트만 필요정보교환을 위한 미국 표준 코드iso-8859US-ASCII의 8비트 확대집합들1~10, 15URI 국제화는 그다지 지원하지 않음오늘날의 URI = US-ASCII의 부분집합RFC 3986 → URI에 UTF-8 문자를 사용할 수 있는 방법을 명시적으로 제시하고 있음.가독성 vs 의미 = 가독성 win리소스 식별자의 가독성과 공유 가능성 보장이 더 중요하다고 여김ASCII 문자들의 제한된 집합으로 이루어진 URI언이스케이핑내부적으로 URI를 ..

HTTP 2025.03.18

HTTP 완벽 가이드 (15)

https://drive.google.com/file/d/1GvTXg8eHt-pFyTplUl_8yyWU0fPL6dCM/view?usp=sharing 엔티티 길이 - Content-Length엔티티 요약미디어 타입과 Charset텍스트 매체를 위한 문자 인코딩멀티파트 미디어 타입멀티파트 폼 제출멀티파트 범위 응답콘텐츠 인코딩과정유형Accept-Encoding 헤더전송 인코딩과 청크 인코딩안전한 전송Transfer-Encoding 헤더청크 인코딩콘텐츠와 전송 인코딩의 조합전송 인코딩 규칙시간에 따라 바뀌는 인스턴스검사기와 신선도신선도조건부 요청과 검사기범위 요청델타 인코딩인스턴스 조작, 델타 생성기 그리고 델타 적용기1115HTTP는 다음을 보장한다.객체는 올바르게 식별됨 → Content-Type 미디어 ..

HTTP 2025.03.15

HTTP 완벽 가이드 (14)

https://drive.google.com/file/d/1htRSl0N5V7Lb6U51W_HmGzcbM7_1xRZz/view?usp=sharing 14장.drawio drive.google.com 14.1 HTTP를 안전하게 만들기대량 구매, 은행 업무, 보안 자료 접근 등을 위해서는 HTTP와 디지털 암호 기술을 결합해야 한다.효율적, 이식성이 좋고, 쉬운 관리, 현실 세계의 변화에 대한 적응력, 사회와 정부의 요구사항 만족서버 인증 - 클라이언트는 자신이 위조된 서버가 아닌 진짜와 이야기 하고 있음을 보장받아야 함.클라이언트 인증 - 서버는 자신이 진짜 사용자와 이야기하고 있음을 알 수 있어야 함.무결성 - 데이터 위조 방지암호화 - 도청 걱정 x효율 - 저렴한 클라이언트나 서버도 이용할 수 있도록..

HTTP 2025.03.15

HTTP 완벽 가이드 (13)

https://drive.google.com/file/d/1hhHnFs84GNP7VrrFQ1dQisg1uk-82kZ7/view?usp=drive_link개선점비밀번호를 절대로 네트워크를 통해 평문으로 전송하지 않는다인증 체결을 가로채서 재현하려는 악의적인 사람들을 차단한다구현하기에 따라서, 메시지 내용 위조를 막는 것도 가능하다.그 외 몇몇 잘 알려진 형태의 공격을 막는다절대로 비밀번호를 네트워크를 통해 보내지 않는다비밀번호 대신 비가역적으로 뒤섞은 ‘지문(fingerprint)’ 혹은 ‘요약(digest)’ 전송단방향 요약요약 = 정보 본문의 압축MD5 : 임의의 바이트 배열을 원래 길이와 상관없이 128비트 요약으로 변환함.32글자의 16진수 문자로 표현됨. 다이제스트 인증 핸드셰이크 서버가 난스 값..

HTTP 2025.03.15

HTTP 완벽 가이드 (12)

https://drive.google.com/file/d/1bnGK9h6gsRj18XnILcbl6FnGSICuXVAG/view?usp=sharing 12장.drawio drive.google.com 웹의 모든 정보나 업무가 공용은 아니기 때문에, 허가된 사람만이 데이터에 접근하고 업무를 처리할 수 있어야 한다.12.1 인증12.1.1 HTTP의 인증요구 / 응답 프레임워크서버 요청에 대해 ‘인증 요구’로 응답12.1.2 인증 프로토콜과 헤더단계 헤더 설명 메서드/상태요청 첫 번째 요청에 인증 정보가 없다 인증 요구WWW-Authenticate사용자에게 사용자 이름과 비밀번호를 제공하라는 의미로 401 상태 정보와 함께 요청을 반려함. 서버에는 각각 다른 비밀번호가 있는 영역을 WWW-Authenticat..

HTTP 2025.03.15