Web(HTTPS)
HTTP/2์ HTTP/3
1. HTTP HTTP ๋ฐ์ ๊ณผ์ - HTTP/0.9(1991๋ ) โถ๏ธ HTTP/1(1996๋ ) โถ๏ธ HTTP/1.1(1997๋ ) โถ๏ธ HTTP/2(2015๋ ) โถ๏ธ HTTP/3(2020๋ ) HTTP/0.9(1991๋ ) - ์ต์ด ์์ฑ ์ ๋ฒ์ ์ด ์์์ผ๋ HTTP/1์ด ์๊ธฐ๋ฉด์ ๊ตฌ๋ถํ๊ธฐ ์ํ์ฌ HTTP 0.9๋ก ๋ถ๋ฆฌ๊ธฐ ์์ - ๋จ์ HTML๋ง ์ ์ก ๊ฐ๋ฅ - GET ๋ฉ์๋๋ง ๊ฐ๋ฅ HTTP/1(1996๋ ) - ํค๋ ๋ฑ์ฅ - ์๋ฒ ์ํ ํ์ธ ๊ฐ๋ฅ - HTML ์ธ ์ปจํ ์ธ ํ์ผ ์ ์ก ๊ฐ๋ฅ - POST, PUT ๋ฉ์๋ ์ถ๊ฐ HTTP/1.1(1997๋ ) - ํ์ค ๋ชจ๋ธ - Keep Alive ๊ธฐ๋ฅ ์ถ๊ฐ - ์ง์ ์ปค๋ฅ์ ๊ธฐ๋ฅ์ผ๋ก TCP Connection ์ฌํ์ฉ - ํ์ดํ๋ผ์ด๋ ๊ธฐ๋ฅ ์ถ๊ฐ - OPTIONS, GET, HE..
HTTPS ํจํท ๋ถ์(TLS 1.2์ TLS 1.3)
1. TLS 1.2 โ DNS๋ฅผ ํตํ์ฌ URL์ผ๋ก IP ํ์ธ โก TCP Handshaking(1 Round Trip Time) - 3 Way Hanshaking https://eunhyee.tistory.com/96?category=937476 TCP์ UDP 1. TCP 3 way handshaking(์์) SYN - Client์์ ์ธ์ ์ ๋งบ๊ธฐ ์ํ์ฌ SYN ์ ์ก - Server๋ SYN์ ๋ฐ๊ณ LITSEN > SYN_RCV ์ํ ๋ณ๊ฒฝ SYN+ACK - Sever๋ SYN์ ํ์ธํ๊ณ Client์ SYN+ACK ์ ์ก - Client๋ SYN+AC.. eunhyee.tistory.com โข TLS Handshaking(2 Round Trip Time) Client Hello : ํด๋ผ์ด์ธํธ์ธก์์ ์์ฑํ..
HTTP and TLS(SSL)
1. HTTP vs HTTPS - HTTP(Hypertext Transfer Protocol) : ์ ์ก์ค ์ํธํ X, 80 Port - HTTPS(HTTP Secure) : ์ ์ก์ค ์ํธํ O, 443 Port - ํด์ปค๊ฐ HTTP ํจํท์ ๊ฐ์ทจํ๊ฒ ๋ ๊ฒฝ์ฐ ํ๋ฌธ์ ์ ๋ณด๋ค์ด ๋ณด์ด์ง๋ง HTTPS ํจํท์ ์ํธํ๋์ด์ ๋ณด์ด๊ธฐ ๋๋ฌธ์ ๋ณด์ ํฅ์(๋ก๊ทธ์ธ ํ์ด์ง๊ฐ ๋ง์ฝ HTTP๋ผ๋ฉด์ ๋์ ๋ก๊ทธ์ธ ์ ๋ณด๊ฐ ๋ค ๋ณด์ด๊ฒ ๋๋ค๋...?! ํ์ฌ๋ ์ค์ ํ์ด์ง ์๋ฅผ ๋ค์ด ๋ก๊ทธ์ธ, ๊ฒฐ์ ๊ด๋ จ ํ์ด์ง๋ ๋ฌด์กฐ๊ฑด HTTPS๋ฅผ ์ฌ์ฉ) Handshake ๋๋ถ๋ถ์ ๋ฉ์ธ์ง๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ์ญํ ์ ํ๋ฉฐ ์ํธํ ์๊ณ ๋ฆฌ์ฆ ๊ฒฐ์ , ํค ์ ๋ฌ, ์ธ์ฆ ๋ฉ์ธ์ง ์ ๋ฌ์ ๋ด๋น Change Cipher Spec SSL ์ํธํ ํต์ ์ ์ฌ์ฉํ ์ํธํ ์๊ณ ๋ฆฌ์ฆ ์ค์ ๊ท์ฝ์ด..
URI, URL, URN
1. URI Uniform Resource Identifier ํตํฉ ์์ ์๋ณ์๋ก URL๊ณผ URN ํํ๊ฐ ์์ 2. URL Uniform Resource Locator ์น ์๋ฒ์ ํ์ํ ๋ฆฌ์์ค์ ์์น๋ฅผ ๋ํ๋ 3. URN Uniform Resource Name ์น ์๋ฒ์ ํ์ํ ๋ฆฌ์์ค์ ์ด๋ฆ์ ๋ํ๋ 4. ํ๊ธฐ ๋ฐฉ๋ฒ Protocol : ํต์ ํ๋กํ ์ฝ Subdomain(Host) : ์๋ฒ ์ด๋ฆ Domain Name : ๋๋ฉ์ธ ๋ค์ TLD : ํ ๋๋ฉ์ธ ๋ค์ Port : ์ฐ๊ฒฐ ํฌํธ Path : ํ์ผ ๊ฒฝ๋ก File Name : ํ์ผ ์ด๋ฆ Parameters(Query) : Request GET ์ ๋ณด
HTTP Method(GET/POST)
1. GET ์๋ฒ์ธก์ ์ ๋ณด ์์ฒญ ์์ฒญํ๋ data๊ฐ url ๋ค์ ๋ถ์ data๋ฅผ ํ๋ผ๋ฏธํฐ๋ผ๊ณ ํ์ฌ url ๋ค '?', '&'๋ฅผ ์ฌ์ฉํ์ฌ ๋ํ๋ data์ ์ ํ์ด ์์ ์ง์ํ์ง ์๋ ์ธ์ด๋ url encoding์ ๋ฐ๋ผ์ผ ํจ ์๋์ ์ผ๋ก ๋น ๋ฆ GET์ด ๋์ํจ์ผ๋ก์จ ์น ์๋ฒ์์ ๋จ์ data๋ฅผ ๊ฐ์ง๊ณ ์ด ์บ์ฑ ๊ฐ๋ฅ ex) ๊ฒ์์ https://search.naver.com/search.naver?sm=top_hty&fbm=1&ie=utf8&query=get+post+%EC%B0%A8%EC%9D%B4 > ๋ค์ด๋ฒ์์ 'get post ์ฐจ์ด'๋ฅผ ๊ฒ์ํด url์ด ๋ฐ๋ 2. POST ์๋ฒ์ธก์ ์ ๋ณด๋ฅผ ์์ฑํ์ฌ ์ ๋ฌ ์์ฒญํ๋ data๊ฐ body์ ํฌํจ data์ ์ ํ์ด ์์ message encoding์ ๋ฐ๋ผ์ผ ํจ ti..
HTTP Header
1. ๊ณตํต Data : HTTP Message๊ฐ ๋ง๋ค์ด์ง ์๊ฐ Pragma : ์บ์ ์ ์ด(HTTP/1.0) Cache-Control : ์ฃผ๋ก Response์์ ์ฌ์ฉ๋๋ฉฐ ์บ์ ์ ์ด(HTTP/1.1) - no-store : ์๋ฌด๊ฒ๋ ์บ์ํ์ง ์์ - no-cache : ๋ชจ๋ ์บ์๋ฅผ ์ฐ๊ธฐ ์ ์ ์๋ฒ์ ํด๋น ์บ์๋ฅผ ์ฌ์ฉํด๋ ๋๋์ง ํ์ธ - no-transform : ์๋ต์ ๋ํ ๋ณํ์ด๋ ๋ณํ์ ํ์ฉํ์ง ์์ - only-if-cached : ๋ฌด์กฐ๊ฑด ์บ์๋ฅผ ์ฌ์ฉ - must-revalidate : ๋ง๋ฃ๋ ์บ์๋ง ์๋ฒ์์ ํ์ธ์ ๋ฐ๋๋ก ํจ - proxy-revalidate : must-revalidate์ ๋์ผํ์ง๋ง ๊ณต์ ์บ์์๋ง ์ ์ฉ - public : ๊ณต์ ์บ์(๋๋ ์ค๊ฐ ์๋ฒ)์ ์ ์ฅํด๋ ๋๋ค๋ ๊ฒ์ ์๋ฏธ ..
HTTP Response Code
1. 1xx(์กฐ๊ฑด๋ถ ์๋ต, Request ์ฒ๋ฆฌ ์ค) 100(Continue, ๊ณ์): ์์ฒญ์๋ ์์ฒญ์ ๊ณ์ํด์ผ ํ๋ค. ์๋ฒ๋ ์ด ์ฝ๋๋ฅผ ์ ๊ณตํ์ฌ ์์ฒญ์ ์ฒซ ๋ฒ์งธ ๋ถ๋ถ์ ๋ฐ์์ผ๋ฉฐ ๋๋จธ์ง๋ฅผ ๊ธฐ๋ค๋ฆฌ๊ณ ์์์ ๋ํ๋ธ๋ค. 101(Swithching Protocols, ํ๋กํ ์ฝ ์ ํ): ์์ฒญ์๊ฐ ์๋ฒ์ ํ๋กํ ์ฝ ์ ํ์ ์์ฒญํ์ผ๋ฉฐ ์๋ฒ๋ ์ด๋ฅผ ์น์ธํ๋ ์ค์ด๋ค. 102(Processing, ์ฒ๋ฆฌ, RFC 2518) 2. 2xx(์ฑ๊ณต, Request ์ฒ๋ฆฌ ์๋ฃ) 200(OK, ์ฑ๊ณต): ์๋ฒ๊ฐ ์์ฒญ์ ์ ๋๋ก ์ฒ๋ฆฌํ๋ค๋ ๋ป์ด๋ค. ์ด๋ ์ฃผ๋ก ์๋ฒ๊ฐ ์์ฒญํ ํ์ด์ง๋ฅผ ์ ๊ณตํ๋ค๋ ์๋ฏธ๋ก ์ฐ์ธ๋ค. 201(Created, ์์ฑ๋จ): ์ฑ๊ณต์ ์ผ๋ก ์์ฒญ๋์์ผ๋ฉฐ ์๋ฒ๊ฐ ์ ๋ฆฌ์์ค๋ฅผ ์์ฑํ๋ค. 202(Accepted, ํ์ฉ๋จ): ์๋ฒ๊ฐ ์์ฒญ์..
HTTP Message
1. HTTP - TCP/UDP ๊ธฐ๋ฐ์ผ๋ก ์น์์ ์ฌ์ฉํ๋ ํ๋กํ ์ฝ 2. Message - Request Message : ์น ํด๋ผ์ด์ธํธ > ์น ์๋ฒ (์ฌ์ฉ์์ ๋ชฉ์ ์ ๋ฐ๋ผ 9๊ฐ์ Methods๋ฅผ ์ฌ์ฉ) - Respose Message : ์น ํด๋ผ์ด์ธํธ < ์น ์๋ฒ - Message ๊ตฌ์ฑ ํํ : Request/Response Line + Header + Blank Line + Body 1. Request/Response Line - Request : Request Method + Request URI + HTTP Version - Response : HTTP Version + Response Code + Response Message 2. Header - Request : Host, Accept, Acc..
html Tag
web์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ html Tag๋ฅผ ์์๋๋ก ํ์ธ ๊ฐ๋ฅํ ์ฌ์ดํธ : https://www.advancedwebranking.com/html/ The average web page from top twenty Google results Apparently, an average web page uses twenty-eight different element types: The twenty-eight elements used on most pages, ordered by appearance frequency: www.advancedwebranking.com html Tag ์ ์๋ฅผ ์นดํ ๊ณ ๋ฆฌ, ์ํ๋ฒณ ์์๋๋ก ํ์ธ ๊ฐ๋ฅํ ์ฌ์ดํธ : https://www.w3schools.com/tags/default..
Web Server๊ณผ WAS, Apache์ Tomcat
Web Server ์ ์ ์ธ ๋ฐ์ดํฐ๋ฅผ ํํ HTML, JPG, GIF ๋ฑ์ HTTP(80) ํ๋กํ ์ฝ์ ํตํด ์น ๋ธ๋ผ์ฐ์ ๋ก ์ ๊ณต ์ข ๋ฅ : Apache, ๋ง์ดํฌ๋ก์ํํธ IIS, Tmax WebtoB, nginx ๋ฑ WAS ๋์ ์ธ ๋ฐ์ดํฐ๋ฅผ ํํ JSP, PHP, ASP ๋ฑ์ 8080 ํ๋กํ ์ฝ์ ํตํด ์ดํ๋ฆฌ์ผ์ด์ ์ผ๋ก ์ ๊ณต Web Server ๋ถํ๋ฅผ ๋ถ์ฐํ๊ธฐ ์ํจ Web Server์ Web Container๋ก ๊ตฌ์ฑ ์ข ๋ฅ : Tomcat, BEA, Web Logic, IBM Web, Sphere, Tmax Jeus ๋ฑ Web Server์ WAS๋ก ๋๋ ์ ์ฐ๋ ์ด์ ๋จ์ HTML, ์ด๋ฏธ์ง์ ๊ฐ์ ๋ฐ์ดํฐ๋ Web Server๋ฅผ ํตํด ์์ ์ ์ผ๋ก ๋น ๋ฅด๊ฒ ์ ๊ณต Apache Web Server ๋ฐ์ดํฐ๋ฅผ ๋จผ์ ๋ฐ์ ์ ์ ์ธ ๋ฐ..
Web Site์ Web Browser
WWW๋? ๋๋ธ์ *3 ํน์ ๋ฐ๋ฐ๋ฐ๋ผ๊ณ ๋ถ๋ฆฌ๋ WWW๋ Word Wide Web์ ์ค์๋ง์ ๋๋ค. ์ธํฐ๋ท์์ ์ฌ์ฉ๋๋ ํ์ค ๋ฌธ์ ์์คํ ์ด๊ธฐ๋ ํ๋ฉฐ ๊ฐ์ฅ ํฐ ํน์ง์ HTML ์ธ์ด๋ฅผ ์ฌ์ฉํ๋ค๋ ๊ฒ์ ๋๋ค. ํด๋น ๋ฌธ์๋ค์ ๊ฐ๊ฐ์ ์น ์๋ฒ์ ์ ์ฅ๋์ด ์์ผ๋ฉฐ User๋ ์ ํํ Web Browser๋ฅผ ํตํด HTML ์ธ์ด๋ก ์์ฑ๋ ๋ฌธ์๋ฅผ Web Page๋ก ์ฝ์ ์ ์์ต๋๋ค. "์ธํฐ๋ท์ ํ๋ค = Web Browser(IE, Chorme ๋ฑ)๋ฅผ ์ฐ๋ค"๊ฐ ๋ ์ ๋๋ก ์ฌ๋งํ ์ธํฐ๋ท์ ๋ชจ๋ WWW๋ก ํตํ๋ค๊ณ ๋ด๋ ๋๊ฒ ์ฃ ? Web Site๋? ํน์ Web Page๋ค์ด ๋ชจ์ฌ Web Site ๋ฉ๋๋ค. ๊ฐ๋จํ๊ฒ ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ, ๋ค์ด๋ฒ ์ผํ, ๋ค์ด๋ฒ ์นํฐ ๋ฑ์ Web Page๋ค์ด ๋ชจ์ฌ ํ๋์ ๋ค์ด๋ฒ Web Site๋ฅผ ๋ง๋ ๋ค๊ณ ํ ์ ์์ต๋..