Our Blog

What we post and publish is awesome!

Web Server / Domain / SSL / API 설명

안녕하세요! 펀치코리아 입니다.

오늘 설명해드릴 내용은 Web Server / Domain / SSL / API 입니다!

https://miro.medium.com/max/800/1*5aQJPPcJOk8KFOJ9VVhncQ.png

웹에 대해 설명할 때 자주 등장하는데, 도통 설명을 들어도 무슨 말인지 모르셨죠?

네이버, 구글에 검색을 해도 용어가 잘 이해가 안가시는 분들을 위해서

오늘 제가 깔끔하게 설명 한번 해보고자 합니다 🙂

Web Server

먼저 Web Server부터 설명 해 드릴게요!

일단 서버 개념부터 이해하시는 게 좋을 것 같아요.

서버란?

서비스를 제공하는 회사에 있는 컴퓨터

라고 이해하시면 됩니다.

이 회사에 있는 컴퓨터는 사용자로부터 받은 모든 데이터를 저장하고 있는데요.

https://upload.wikimedia.org/wikipedia/commons/thumb/c/c9/Client-server-model.svg/500px-Client-server-model.svg.png

위 그림에서 오른쪽 서버 컴퓨터에 제 글이 한번 저장이 되면,

클라이언트(유저)들이 제 글 검색시, 제 글을 확인 할 수 있겠죠?

이 글을 확인 할 수 있는 건, 방문자들이 제 컴퓨터에 접속해서가 아니고,

서버 컴퓨터에 저장되어 있는 제 글을 봐서 입니다

그럼 앞에 ‘웹’이 붙은 웹 서버란 무엇일까요?

웹 서버란 이 서버 컴퓨터에 설치되어 있는 소프트웨어(프로그램)라고 생각 하시면 됩니다.

예를 들어, 단순하게 블로그 글만 저장되어 있다면 웹페이지 상에선 블로그 글을 볼 수 없어요.

그래서 서버에 블로그 글을 저장시켜 줄 프로그램이 필요한데요.

이처럼

웹 컨텐츠를 저장하고 있는 프로그램

웹 서버라고 합니다.

소프트웨어, 프로그램 이라고 하면 보통 Microsoft Word, Adobe PDF reader, Google Chrome, 카카오톡 같은

일반적인 소프트웨어도 떠올릴 수 있지만

대표적인 웹 서버(웹 컨텐츠를 저장하고 있는 프로그램)로는 아파치(Apache), 엔진엑스(nginx)가 있습니다.

이런 프로그램 내에 블로그 글이 올라가면서

유저들이 웹 상에서 정해진 규칙(HTTP 프로토콜)에 따라 서버에 접속하고,

아파치, 엔진엑스 같은 프로그램을 통해 블로그 글을 봄으로 인해,

이 글을 여러분들이 지금 보고 계신거예요!


Domain

Web Server에 대해 이해했으니, 이제 도메인 설명 해 드릴게요!

도메인이란

인터넷에 연결되어 있는 전자기기들이 가지고 있는 고유한 영문 주소

라고 생각하시면 됩니다.

인터넷에 연결되어 있는 모든 기계들은 고유한 숫자(IP address)를 가지고 있는데요.

https://delante.co/wp-content/uploads/2020/09/ip-address-definition.png

위 그림에서 192.168.1.1 이 IP라는 녀석이 생긴 모양이예요.

예를 들어, 192.168.1.1 이라는 IP 주소가 지금 읽고 계신 이 블로그의 주소라고 가정했을 때,

이 IP 주소로 매번 접속하려면 외우기가 힘이 들겠죠?

그래서 등장한 것이 Domain 입니다.

이 숫자들 대신 의미있고 외우기 쉬운 영어로 도메인을 만들어서 IP주소에 연결시키는 거지요.

https://i1.wp.com/myseolabo.com/wp-content/uploads/2019/02/domain-description-image.png?fit=780%2C320&ssl=1

naver.com, daum.net, google.com 모두 다 도메인 주소 입니다.


SSL

웹사이트 구축해 보신적이 있으신가요? SSL 많이 들어보셨죠?

도대체 SSL 이 뭔가..??

SSL은 Secure Sockets Layer의 준말로, 보안소켓계층을 이르는 말입니다.

그래서 보안 소켓이 뭔데..?

인터넷 웹상에서 데이터를 주고 받을 때에는 여러가지 단계가 필요한데 그 중 하나예요.

SSL이 등장하게 된 이유는 기존에 데이터를 주고받는 HTTP 프로토콜(통신규약)로는 보안상 한계가 있기 때문인데요.

SSL은 아주 쉽게 설명하자면, http 와 https 의 차이라고 생각하시면 됩니다.

https://www.x-cart.com/wp-content/uploads/2017/02/http_to_https-1.jpg

기존 인터넷에선 Http만 썼지만 여러가지 해킹들의 위험으로 부터 웹사이트를 보호하고자

Https가 등장하게 된 것이지요.

인터넷 주소창을 더블클릭 하셨을 때, 주소가 https로 시작한다면,

자물쇠모양이 주소 앞에 붙은 것을 확인 하실 수 있을 거예요.

요즘 웹사이트 제작 플랫폼들은 SSL인증서를 포함하고 있는 경우가 많아요.

대표적으로 Shopify 를 들 수 있겠네요!


API

마지막으로 API 설명 해 드릴게요!

API란 Application Programming Interface 의 약자로

두 프로그램 사이를 연결시켜주는 방법

을 말합니다.

이렇게 설명해도 비개발자의 경우 도저히 이해를 할 수 없는데요.

API 설명할 때 많이 쓰이는 예를 한번 들어볼게요.

여러분이 레스토랑을 갔는데 요리를 주문하려고 해요.

여러분은 요리가 어떻게 조리 되는지에 대해서는 알 필요가 없습니다.

이미 레시피는 다 만들어져 있기 때문이죠.

여러분은 메뉴판을 보시고 웨이터에게 주문만 하면

웨이터가 주방으로 가서 요리사에게 요리를 만들어 달라고 요청 하는 겁니다.

이때 여러분은 클라이언트, 웨이터는 API, 요리사는 프로그램 이라고 보시면 됩니다.

여러분은 웨이터 라는 API를 통해 레시피를 알지 못해도 맛있는 요리를 먹을 수 있게 되는 것이지요.


여기까지는 알아도 와닿지 않는 게 이 API 라는게 어떻게 생겨먹었는지 몰라서 인데요.

https://www.altexsoft.com/media/2019/06/Screenshot_1.png

{“richestPeople”:[     {     “firstName”:”Bill”,     “LastName”:”Gates”,     “value”:81     },     {     “firstName”:”Carlos”,     “LastName”:”Slim”,     “value”:79     }]}

이렇게 생겨먹은 데이터베이스가 있을 때

이 데이터베이스를 통해서 뭔가 의미 있는 정보를 얻고 싶을 때

API를 쓸 수 있어요.

이런 데이터베이스를 유저들이 쓸 수 있는 일종의 규칙(코드)을 API 라고 합니다.

그럼 대표적으로 네이버 API를 볼까요?

https://developers.naver.com/products/intro/plan/plan.md

 

네이버 오픈 API 목록 – INTRO

Products API 이용 안내 API 소개 운영 정책 FAQ BI 가이드 이용약관 상표사용 가이드 CLOVA 네이버 로그인 파파고 서비스 API API 공통 가이드 CLOVA 네이버 로그인 파파고 서비스 API Products Products API 이용 안내 API 소개 운영 정책 FAQ BI 가이드 이용약관 상표사용 가이드 네이버 오픈 API 목록 네이버 오픈API 목록 및 안내입니다. 네이버 오픈 API 목록 API명 설명 호출제한 검색 네이버 블로그, 이미지, 웹, 뉴스, 백과사전, 책, 카페, 지식iN 등 검색 25,0…

developers.naver.com

이 링크를 통해 가시면 네이버 오픈 API 목록을 확인 하실 수 있는데요.

https://developers.naver.com/docs/serviceapi/search/blog/blog.md#%EB%B8%94%EB%A1%9C%EA%B7%B8

 

블로그 – Search API

Documents API 이용 안내 CLOVA 네이버 로그인 파파고 서비스 API API 공통 가이드 CLOVA 네이버 로그인 파파고 서비스 API 데이터랩 검색 단축 URL 이미지캡차 음성캡차 네이버 공유하기 모바일앱 연동 네이버 오픈메인 내 애플리케이션 애플리케이션 등록 API 제휴 신청 계정 설정 Documents Documents 서비스 API 검색 블로그 뉴스 책 성인 검색어 판별 백과사전 영화 카페글 지식iN 지역 오타변환 웹문서 이미지 쇼핑 전문자료 블로그 검색 > 블로그 네이버 블로그 검색 결과를 출력해주는 REST …

developers.naver.com

여기 가 보시면 블로그 API같은 경우 https://openapi.naver.com/v1/search/blog.json 에 데이터베이스가 저장 되어 있는데요.

https://openapi.naver.com/v1/search/blog.json

위 사이트를 그대로 접속 시 richestPeople 예제처럼 JSON 형식의 데이터베이스가 나와야 하는데

Public API가 아니고 여러가지 작업이 필요해서 노출이 바로 안되어 있네요.

네이버 API와 연동할 수 있게 여러분이 여러분의 앱을 등록시키고

여러가지 코딩을 통해서 API에 접근 하실 수 있는 겁니다.

php header설정 코드

이미 데이터베이스가 구축이 되어 있어서 백엔드에 대해서 고민을 많이 안하셔도 된다는 엄청난 장점이 있어요.

좀 더 이해를 돕기 위해 예를 하나만 더 들어보자면,

집에서 사과주스를 먹고 싶은데 만들어 본적이 없어요.

그래서 엄마한테 사과주스 좀 만들어 달라고 부탁을 합니다.

그런데 엄마가 사과, 꿀, 레몬즙, 당근이 들어가니 사오라고 시켜요.

엄마에게 가져다주니 만들어 줍니다.

그러면 결국엔 사과주스를 먹을 수 있게 되겠죠.

저런 각각의 재료들이 API이구요. 엄마는 API를 제공하는 서비스(네이버, 카카오 등)가 될 거 같네요.

엄마(네이버)가 원하는 재료들(API)을 가져다 줬더니 사과주스(원하는 결과물)를 얻게 되었죠?

최대한 용어사용을 자제하면서 설명하려고 했는데 잘 이해가 되셨나 모르겠네요!

API는 구글에서 조금 더 검색하시면서 또는 실전 프로젝트를 통해서 이해하시면 더욱 더 와닿으실 거 같아요!

​영어로 설명을 해보자면

General concept for AWS, domain and SSL:
When we have some application/website that has to be working 24/7, we need to put it into the Internet, so it needs these 3 things. This app has to have a home = server. So we usually build homes for apps from server. Secondly, home needs address = domain name. People can find this home using a domain name. Thirdly, we need some security for this home to be safe = SSL. Using this 3 things, we can make app live in safe home with address

그러니까 서버가 집이고 도메인은 집 주소, SSL은 스크린도어 같은 거라고 이해하시면 됩니다.​


오늘은 웹서버 / 도메인 / SSL / API 에 대해서 설명해 보았습니다.

포스팅 방문해 주셔서 감사하구요.

좋은하루 되세요!

One Response

  1. Aiaru March 25, 2022

Leave a Reply