5. Port
- 서버 컴퓨터로 외부에서 지역 네트워크에 접속해서 공유기에 연결된 한 클라이언트 컴퓨터에 도달하려면?
- 공용 IP로 접속해봤자 해당 공유기에 연결된 어떤 컴퓨터로 가야할지 모름.
- 접속이 들어왔을 때 누가 서버에 응답하게 할지 공유기가 교환/연결해줌.
- 포트
- 항구에 정박한 배들은 각자 번호를 갖고 있고, 그에 해당하는 포트에 정박함.
- 하나의 컴퓨터에 여러 개의 서버가 있을 수 있음. 특정 컴퓨터에 접속 시, 여러 서버들 중 어떤 서버와 상호작용할지 식별하는 방법이 포트 번호를 사용하는 것.
- 포트 번호 : 0부터 65535까지 있음.
- 80번은 http : hyper text transfer protocol. 웹페이지 주고 받을 때 사용하는 통신규약. 웹은 http 사용하는 통신시스템. 컴퓨터에 웹서버 깔면 기본적으로 80번 포트에 연결되게(listen을 듣게) 약속돼있음.
- 웹서버를 80번에 설치하지 못할 땐 다른 데 쓰면 되는데, 관습적으로 8000번이나 8080번 사용.
- 1023번까지는 예약된 포트(well-known port) : 사용할 수 없거나 문제 생김.
- 80번은 http : hyper text transfer protocol. 웹페이지 주고 받을 때 사용하는 통신규약. 웹은 http 사용하는 통신시스템. 컴퓨터에 웹서버 깔면 기본적으로 80번 포트에 연결되게(listen을 듣게) 약속돼있음.
- url format
- [scheme:[//user[:password]@]host[:port]][/path][?query][#fragment]
- scheme : 통신규약
- host : 도메인 네임
- http://로 시작하는 url에 접속하면 80번 포트에 접속됨.
- 8080번 포트를 리스닝하고 있는 웹서버 호출하려면 :8080 으로 끝나는 url(예. http://blabla:8080)에 접속하면 됨. 80포트일 때는 url에서 포트 번호가 생략된 것.
- [scheme:[//user[:password]@]host[:port]][/path][?query][#fragment]
2. 컴퓨터와 인터넷
- 컴퓨터 : 기계 모아둔 것.
- 하드디스크 : 적어두기
- 램 : 기억하기
- CPU : 계산하기
- 메인보드 : 꽂아두기
- 운영체제(OS) : 컴퓨터에 하나하나 지시 내리지 않아도 알아서 각 부품들이 작동하게 제어/조작해줌. 인간이 기계와 소통하게 해주는 기반 프로그램.
- 리눅스 : 오픈소스. 무료. 컴퓨터, 서버 여러 대 필요할 때 사용.
- 코딩 : 운영체제에 명령 내려 제어하는 것.
- 프로그래밍 언어 : 그 명령 내리는 방법. 각 언어가 하는 게 다른 것 아니라, 어떤 언어로 명령할지의 차이.
- 프로그램 : 코딩을 미리 해놔서 반복적으로 같은 동작 작동하게 하는 것. 코딩은 프로그램 만드는 것. 그래서 프로그래밍.
- 인터넷 : 컴퓨터끼리 대화하려면 필요.
- 웹(http) : 대화를 주고 받기 위해 필요한 규칙. 인터넷 세상에 여러가지 다른 통신방식들도 있는데 그중 웹통신.
- https : 암구호 표를 이용해서 보안 강화함.
- 웹서버 : 항상 켜진채 인터넷 세상을 잘 듣고 있다가 http 요청이 오면 이 파일을 줘! 명령내린 것.
3. 웹서비스 동작 방식
- 서버 : 컴퓨터의 직업 중 하나
- 역할 : 데이터를 저장하고 주고 받는 것.
- 그래서 서버가 터지면 데이터가 전달 안됨.
- 컴퓨터는 서버 돌리면서 동시에 데이터베이스도 되고, 웹서핑도 할 수 있음.
- 브라우저 : 서버로부터 받아서 보여줌.
- 저장되어있기 때문에 인터넷 끊는다고 바로 사라지지 않음.
- html, css, javascript 받아서 페이지 구성.
- 데이터
- html, css, javascript 그대로 두고 데이터만 업데이트하고 싶을 때, 데이터만 내려줄 수도 있음.
- 제이슨 방식 : 데이터 주는 규칙. { 키: 밸류 }
- 앱에서 많이 씀. 기본 껍데기는 두고, 데이터만 받아서 붙임.
- 앱 업데이트를 안하면 눈 내리는 껍데기가 없어서 카톡 눈 내리기 기능이 안 되는 거.
- 웹에서는 안 그럼. 서버에서 껍데기까지 다 받아옴.
- 서버의 출입문 : 컴퓨터끼리 어떤 규칙으로 통신하나?
- => 다음시간에
'TIL' 카테고리의 다른 글
[TIL-102] 위코드 1일차: HTML&CSS replit 1~13 (0) | 2022.01.24 |
---|---|
[TIL-101] 생활코딩 WEB2-Home server 6~10 / 스파르타코딩클럽 코딩 용어 해설 (0) | 2022.01.18 |
[TIL-99] 생활코딩 WEB2-Home server 1~4 (0) | 2022.01.17 |
[TIL-98,102] 노마드코더 유튜브 클론코딩 #7.16~#7.18 (0) | 2022.01.16 |
[TIL-97~8] 노마드코더 유튜브 클론코딩 #7.9~#7.15 (0) | 2022.01.15 |