이번시간에는 HTML이 무엇인지 알아보고 실제로 HTML을 이용해서 간단한 웹 페이지를 만들어 보도록 하겠습
니다. 그리고 서버와 클라이언트의 관계에 대해서도 알아보도록 하겠습니다.
첫 번째 강의는 HTML, 서버와 클라이언트의 관계에 대한 강의이고 두번 째 강의는 실제로 html을 이용해서
웹 페이지를 만들어보는 강의입니다.
언제든지 질문이 있으면 댓글을 남겨주세요.......^^
html4 from Lee Jun Ho on Vimeo.
< 파워포인트 자료>
서버와 클라이언트와의 관계?
서버와 클라이언트와의 관계는 어떻게 되는 것인가? 이러한 고민은 컴퓨터에 관심을 가지고 있는 사람이라면 누구나 한번쯤 가져보는 의문이다. 이러한 의문은 우리가 시작하는 php와 웹사이트 개설에 가장 근본이 되는 문제이다. 그럼 이 클라이언트, 서버에 대해 알고 있어야 그것을 사용하고 앞으로의 수업도 이해하기가 쉬울 것 이다.
클라이언트는 간단히 우리가 사용하고 있는 컴퓨터를 말한다. 우리가 일반적으로 사용하는 컴퓨터들은 사용자에 의해서 어떠한 요청들을 발생시킨다. ID와 패스워드를 입력할 테니까 나에게 메일을 보여 달라. 클릭을 할테니까 원하는 정보를 보여 달라. 이처럼 사용자가 원하는 어떠한 요청을 발생시키는 컴퓨터들을 클라이언트라고 볼 수 있다.
사용자들은 이런 클라이언트 컴퓨터들을 여러 가지 용도로 사용하고 있다. 인터넷 서비스 중 하나인 www를 이용해 웹서핑을 하고, FTP를 사용해 파일을 옮기거나 다운받고, 이메일 등을 사용한다. 그런데 이런 서비스들은 사용자들에게 어떻게 전달되는 것일까? 우리는 그저 웹브라우저에 주소를 치고, IRC(internet relay chat)에 연결하는 명령어를 치고, 메일을 작성해서 발송 할 뿐인데? 설마 내 컴퓨터 안에서 이런 모든 서비스들이 진행 될 수 있는 것인가? 물론 아니다. 우리가 사용하는 클라이언트에서 www에 접속을 하고, 메일을 보내고, IRC에 접속하면 사용자들의 요구를 담고 있는 요청이 발생한다. 이런 요청들을 받아서 처리하여, 우리에게 그 요청에 맞는 서비스를 실행시켜주는 곳이 바로 서버(server)이다.
예를 들어서 우리는 www.naver.com등에서 검색서비스를 이용하고 있는데 우리가 이 서비스를 사용하기 위해 사이트에 접속을 할 때는 네이버 회사가 보유한 서버에 접속을 하는 것이다. 이렇게 어떠한 사이트를 제작하고 그것을 운영하기 위해서는 위에서 말한 서버가 필요하다. 그렇다면 우리도 사이트를 제작하기 위해서는 서버가 필요할 것이다. 우리가 서버를 소유할 수 있는 방법은 일반적으로 두 가지가 있다. 첫 번째는 웹호스팅업체1)로부터 공간을 대여 받는 방법과 두 번째로는 우리가 사용하는 컴퓨터에 LAMP2)를 설치해서 서버로 사용하는 방법이 있다.
서버의 역할은 아주 간단하다. 각 서버별로 맡고 있는 임무를 사용자들의 요청이 있을 때마다 그 임무를 수행 하면 된다. 우리가 위에서와 같이 메일을 사용하고, 검색을 하고, 게임에 접속하는 등 유저들의 요구를 담은 리퀘스트들을 처리해서 다시 유저들에게 보내주는 일을 하고 있는 것이다.
클라이언트가 서버로 보내는 요청에는 여러 가지형태가 있으며 그 형태에 맞는 규약(protocol)들이 정해져있다. http(Hypertext Transfer Protocol), tcp(Transmission Control Protocol)/ip(Internet Protocol), FTP(File Transfer Protocol) 등 이를 비롯해 사용자들의 클라이언트와 서버와에 연결되는 규약들은 더 다양하다.
규약은 서버와 사용자들 간의 약속이다. 요청을 할 때와 요청에 받는 서버의 답변은 모두 위에서 언급한 규약(protocol)을 따라야 한다.
간단한 예를 들어 보자. 요즘 많은 인기를 끌고 있는 아웃백과 같은 훼밀리 레스토랑를 찾아가 본 적이 있는가? 아웃백에 손님이 들어오게 되면 그 손님만을 위한 서버가 따라 다니면서 처음의 앉을 자리를 찾아주는 것부터 손님이 나가실 때 까지 모든 손님들의 요청을 처리하여 준다. 손님이 하는 주문을 받고, 물이 필요하면 물을 가지고 오고, 다른 서비스를 원하면 그 서비스에 맞는 일을 손님을 위해 지정된 서버가 다 처리하여 준다. 이런 관계와 유사하다. 우리가 쓰고 있는 컴퓨터는 손님이다. 보고 싶은 것이 있거나, 원하는 게임을 하고싶고, 메일을 쓴다거나 하는 여러가지 요청을 서버에게 보낸다. 그럼 아웃백의 서버와 같이 정보와 콘텐츠를 구해오고, 정보와 콘텐츠를 플랫폼에 담아 서비스를 시작한다. 컴퓨터 서버가 아웃백의 서버와 다른 점은 24시간 손님을 위해 존재하며, 손님이 어디에 있더라도 상관없이 손님에게 서비스를 제공할 수 있다는 점이다.
이런 서버에도 여러 가지 종류가 있다. 검색을 하기 위한 서버, 메일을 관리하는 서버, 컨텐츠를 관리하는 서버등 여러 가지 서버가 있으며, 서버와 서버간에도 서로 연결되어 있다. 어떠한 요청에 맞는 서비스를 위해서 하나의 서버만이 처리하는 것이 아니라, 검색 서버도, 컨텐츠 서버도, 메일 서버도 각기 손님의 요청에 맞는 부분을 제공하여 최종적으로 다시 손님에게 돌려준다.
이것이 지금 우리가 사용하고 있는 컴퓨터에서 우리들 모르게 이루어지고 있는 서버와 클라이언트의 관계이다. 여러분의 클릭 하나하나, 키보드의 커서 하나하나에 서버들은 모두 반응하고 서비스를 제공한다.
'웹제작 강의 > HTML' 카테고리의 다른 글
HTML 10강 - 음악, 동영상, 플래시 삽입하기 - (15) | 2009.04.04 |
---|---|
HTML 9강 - 이미지 삽입 - (13) | 2009.04.04 |
HTML 8강 (글자관련 태그, 글자 모양 태그(font)) (5) | 2009.04.04 |
HTML 7강 - 리스트 만들기 - (19) | 2009.04.04 |
HTML 6강 -아크로 에디터, 하이퍼 링크- (32) | 2009.04.04 |
HTML 5강 html 태그연습(body 태그, 글자크기) (17) | 2009.04.04 |
HTML 3강 FTP, 알FTP (21) | 2009.04.04 |
HTML 2강 -서버, 무료 웹 호스팅- (15) | 2009.04.04 |
HTML1강 -IP, Domain, server, DNS, URL- (22) | 2009.04.04 |
HTML 강의를 시작하기 전에..... (17) | 2009.04.04 |