교양/네트워크 (5) 썸네일형 리스트형 HTTP 서버 HTTPS로 서비스 하기 이것때문에 하루 종일 얼마나 삽질 한지 모르겠다. 이론적인 부분은 검색해보면 차고 넘치는 만큼 오로지 목표에 다가서는 방법만 정리하려 한다. 1. SSL 인증서 발급 일단 SSL 인증서를 공인된 기관에서 받아야 한다. (openssl 같은 것을 이용해서 직접 만들수도 있지만, 어차피 실 서비스에 사용할 수 없다) SSL은 publicKey와 privateKey로 구성되는데 두 개의 파일이 필요하다는 것만 알고 있으면 된다. https://certbot.eff.org/ Certbot - Ubuntubionic Nginx Different Internet services are distinguished by using different TCP port numbers. Unencrypted HTTP norma.. HTTP 완벽가이드 - 4장 커넥션 관리 TCP커넥션은 어떻게 이루어 지는가 전송 패턴 1. 첫번째로 URL에 호스트명을 추출한다. 2. 호스트명을 DNS서버를 통해서 IP로 바꾼다. 3. 포트번호를 얻는다. 4. TCP커넥션을 새성한다. 5~6 : 응답과 요청을 한다. 7 : TCP 커넥션을 끊는다. 전송 방식 HTTP가 메시지를 전송할 때, TCP 커넥션을 통해서 데이터를 순서대로 보낸다. TCP는 세그먼트라는 단위로 데이터 스트림을 잘게 나누고, 세그먼트를 IP 패킷이라고 불리는 봉투에 담아서 인터넷을 통해 데이터를 전달한다. 맨 아래쪽이 TCP 데이터 스트림 덩어리(chunk)이고 나머지는 TCP/IP가 정확히 데이터를 전달하기 위한 메타데이터들이다. TCP 소켓 프로그래밍 HTTP통신을 위해서 TCP/IP커넥션을 직접 설정하기에는 많은.. HTTP 완벽가이드 - 3장 HTTP 메시지 메시지의 흐름 메시지의 흐름을 가르키는 용어는 다음과 같다. 인바운드 클라이언트 -> 서버 로 메시지가 이동(요청)하는 것 아웃바운드 서버 -> 클라이언트로 메시지가 이동(응답)하는 것 다운스트림 HTTP의 모든 요청은 다운 스트림으로 흐른다. 메시지 구조 메시지는 다음과 같은 구조를 가진다. 요청 시작줄 GET /tools.html HTTP/1.0 CRLF 헤더 : Accpet : text/html, image/gif CRLF 응답 시작줄 : HTTP/1.0 200 OK CRLF 헤더 : Content-type : text/html CRLF CRLF 본문 : "Hello HTTP" CRLF 특이한 점은 CRLF(캐리지리턴)이다. 보통 프린터에 사용되는 인코딩에서 띄어쓰기(\n)과 같은 역할을 한다. 모.. HTTP 완벽가이드 - 2장 URL과 리소스 URL URL의 구조는 크게 세 가지로 나뉜다. 스킴 통신 프로토콜 부분(http)를 스킴이라고 부른다. 스킴은 웹 클라이언트가 리소스에 어떻게 접근하는지 알려준다. 서버의 위치 www.codns.com 부분이 서버의 위치다. 이는 웹 클라이언트의 리소스가 어디에 호스팅 되어 있는지 알려준다. 리소스 및 리소스 경로 /codns/codns.jsp 부분이 리소스의 경로이다. 경로는 서버에 존재하는 로컬 리소스 들 중에서 요청받은 리소스가 무엇인지 알려준다. URL 문법 다시 URL 구조를 바탕으로 URL 문법에 대해 자세히 알아보자. 스킴 사용할 프로토콜을 의미한다. 기본값은 없다. 유저, 패스워드 몇몇 스킴들은 유저와 비밀번호를 요청하는 경우가 있다. (FTP 가 한 예이다.) 아이디와 비밀번호를 : 로.. HTTP 완벽가이드 - 1장 HTTP 개관 6개월 전에 산 책인데, 몇번을 읽다 포기 한 줄 모르겠다. 이번 기회에 정리하면서 완독하는 것을 목표로 한다. 1장 HTTP 개관 1장에서는 HTTP 를 전체적으로 가볍게 훑고 넘어 간다. HTTP : 인터넷의 멀티미디어 배달 부 HTTP는 text부터 거희 대부분의 모든 미디어들을 전송 할 수 있다. 그리고 이것들을 웹 리소스라고 부른다. MIME 타입 데이터 포멧 라벨 원래는 메일 전송에 사용됬던 건데 성능이 좋아 HTTP에서 채택되었다고 한다. 웹 서버는 모든 HTTP 객체를 MIME타입을 붙힘 https://developer.mozilla.org/ko/docs/Web/HTTP/Basics_of_HTTP/MIME_types MIME 타입 MIME 타입이란 클라이언트에게 전송된 문서의 다양성을 알려.. 이전 1 다음