차이점

이 페이지의 선택한 이전 버전과 현재 버전 사이의 차이점을 보여줍니다.

차이 보기로 연결

월드와이드웹 [2011-12-26 00:02] (현재)
lifthrasiir 새로 만듦
줄 1: 줄 1:
 +====== 월드 와이드 웹 ======
  
 +World Wide Web (WWW). [[하이퍼텍스트]]를 기반으로 만들어진 [[인터넷]] 상의 거대한 [[분산시스템|분산]]된 정보망. 그냥 줄여서 [[웹]](Web)이라고도 하며, 인터넷에서 가장 널리 쓰이는 서비스인지라 인터넷과 동의어로 쓰이는 (엄밀히는 잘못된) 상황도 흔하다.
 +
 +그 직접적인 시초는 [[Tim Berners-Lee]]가 [[1990년]]에 [[유럽입자물리연구소]](CERN)에서 과학자들 사이의 정보 교환을 위해 만든 시스템이지만, 그 아이디어는 Berners-Lee가 1980년에 만든 다른 시스템(ENQUIRE)와, 더 나아가서는 하이퍼텍스트라는 개념 자체(1960년대에 [[Ted Nelson]]이 제안했다)까지로 거슬러 올라갈 수도 있다. 게다가 하이퍼텍스트 시스템이 기존에 없는 것도 아니었고((애당초 Berners-Lee가 웹을 따로 만들기 시작한 이유는 [[다이나텍스트]](Dynatext)가 비쌌기 때문이기도 했다. 무려 문서 및 링크 단위 과금을 했다고...)), 심지어 인터넷을 사용하는 시스템까지 따져도 거의 비슷한 시기((Tim Berners-Lee는 최초의 웹 브라우저와 웹 서버를 1990년 말(좀 더 정확히는, **[[성탄절]]**)에 완성했고, 고퍼는 1991년 봄에 개발되었다.))에 개발된 [[고퍼프로토콜]]이 있다. 하지만 점차 시간이 지나면서 웹이 과학자들 뿐만 아니라 좀 더 일반적인 사람들이 사용할 수 있을 정도로 확장되면서, 웹을 기반으로 사업을 할 수 있을 정도의 토양이 조성되었고 현재는 웹이 없는 생활을 생각할 수 없을 정도로 보편화되었다.
 +
 +===== 구조 =====
 +
 +웹은 전통적인 [[프로토콜의상태|상태 없는]] [[서버클라이언트모델]] [[인터넷프로토콜|프로토콜]]인 [[HTTP]] 위에서 정보들을 전달하는 구조를 띠고 있다. HTTP에서 서버를 맡는 쪽을 [[웹서버]]라 하며, 클라이언트를 맡는 쪽은 흔히 [[웹브라우저]](사용자가 웹을 탐색할 수 있도록 해 주는 [[소프트웨어]]) 또는 [[웹크롤러]]([[검색엔진]]에서 사용할 목적으로 페이지를 자동으로 수집하는 프로그램)가 된다.
 +
 +전달되는 정보는 여러 종류가 있으며, 어떤 종류의 정보가 전달되는지는 HTTP에 포함된 [[인터넷미디어타입]]이 결정한다:
 +
 +  * [[HTML]] 문서
 +  * 구조화된 데이터: [[XML]], [[JSON]]
 +  * 스타일 시트: [[CSS]] (종종 HTML에 포함[embed]되기도 한다), [[XSLT]]
 +  * 프로그램 코드: [[자바스크립트]] (이 역시 종종 HTML에 포함된다), [[SWF파일]]
 +  * [[이미지파일]]: 흔히 [[PNG]], [[JPEG]], [[GIF]], [[SVG]]
 +  * [[사운드파일]]: 흔히 [[MP3]], [[Ogg]] [[Ogg Vorbis|Vorbis]]
 +  * [[동영상파일]]: 흔히 [[MPEG-4]], [[플래시비디오]](FLV), [[WebM]]
 +  * 기타 이것 저것 (임의의 파일은 ''application/octet-stream''이라는 일반적인 타입으로 간주된다)
 +
 +이 중 가장 중요한 것은 아래에 있는 모든 것들을 연결해서 보여 주는 HTML 문서로, [[웹페이지]]라고도 불린다. 웹 페이지가 모여서 만들어진 묶음을 [[웹사이트]]라고 부르며, 개인이 운영하는 웹사이트를 [[홈페이지]]라고 말하기도 했으나 모호함이 있어서 많이 쓰이진 않는다. 웹사이트는 기술적으로 이들 파일을 별도의 수정 없이 정적으로 제공하느냐, 아니면 서버에서 실시간으로 가공된 결과를 제공하느냐에 따라 [[정적웹사이트]]와 [[동적웹사이트]]로 다시 크게 나눌 수 있다. (후자의 대표적인 예로 [[블로그]]가 있다.)
 +
 +HTML의 중요한 특징 중 하나는 [[하이퍼텍스트]], 즉 다른 문서에 대한 [[링크]]가 존재한다는 것으로, 링크는 링크되는 웹페이지의 허락을 받지 않고 해당 페이지의 주소([[URL]])만 알면 마음대로 걸 수 있다. (다만 링크된 측이 링크를 확인하고 접속을 "거절"하는 것은 가능하다. [[HTTP리퍼러]]를 참고.) 이런 설계는 링크되는 측이 어디에서 링크를 받았는가를 알기 어렵다는 단점이 있는데, 이는 아래에서 언급할 [[검색엔진]]의 사용과 [[위키]]와 같은 2차적인 수단을 통해서 어느 정도 해결이 된 상태이다.
 +
 +웹은 분산되어 있기 때문에 모든 웹페이지의 목록을 나열하는 것은 불가능하다.((동적인 웹페이지를 고려하기 시작하면 가능한 웹페이지의 수는 사실상 [[무한대]]가 될 수도 있으며, 정적인 웹페이지만 고려하더라도 (그리고 우리가 정적인 웹페이지와 동적인 웹페이지를 구분할 수 있다고 **가정**해도) 다른 곳에서 링크되지 않은 웹페이지를 알아낼 방법은 없다.)) 하지만 이건 매우 불편하기 때문에, 흔히 [[검색엔진]]으로 불리는 사이트가 접근 가능한 사이트들을 주기적으로 수집하면서 주요한 웹페이지들의 목록을 자동으로 생성해낸다. 이 검색 엔진의 크기는 생각 외로 어마어마해서, [[딥웹]](Deep Web)이라고 부르는 아무나 접근 불가능한(유료라거나 가입제라거나) 웹페이지를 제외해도 수억개 이상의 웹페이지로 구성되는 것은 일반적이다. 대표적인 검색 엔진인 [[구글]]은 [[2008년 현재]] 1조개의 URL(([[http://googleblog.blogspot.com/2008/07/we-knew-web-was-big.html|We knew the web was big...]] (구글 공식 블로그) ))을 발견했으며, 그 중 매우 일부(([[http://www.worldwidewebsize.com/|WorldWideWebSize.com]]의 연구에 따르면, [[2011년 현재]] [[구글]], [[야후]] 및 [[빙]]이 아무리 적어도 총 88억개의 웹페이지를 수집한 것으로 추정된다. 이 웹페이지가 실제로 몇 개의 URL로 매핑되는지는 아무도 모른다.))만이 실제로 수집된 상태이다.
 +
 +===== 같이 보기 =====
 +
 +  * [[인터넷문화]] (사실상 "웹" 문화이지만...)
 +  * [[웹서비스]]
 +  * [[웹애플리케이션]]
 +  * [[웹2.0]]
 +
 +{{tag>인터넷}}

도쿠위키DokuWiki-custom(rev 9085d92e02)을 씁니다.
마지막 수정 2011-12-26 00:02 | 작성자 lifthrasiir