[CS] 웹 정의, 역사, 종류 등
웹프로그래밍
웹의 기본 목적
다른 여러 컴퓨터에서 문서를 공유하거나 보는 목적
웹에서 다루는 문서를 웹 문서 라고 부름
웹의 구조
인터넷을 활용 거미줄처럼 연결된 정보 소통망, world wide web
→웹문서를 인터넷 상의 컴퓨터들 끼리 주고 받는 네트워크 시스템
웹 구성
웹서버 와 클라이언트 컴퓨터들로 구성
웹서버
웹사이트를 탑재하는 컴퓨터로 구글(www.google.com), 네이버(www.naver.com) 등
웹 문서, 이미지, 동영상 등의 데이터 저장 관리
웹 클라이언트의 요청을 받아 웹 문서 전송
웹 서버로 작동하도록 하는 소프트웨어를 실해하는 컴퓨터
웹 클라이언트
사용자 인터페이스 담당
웹 서버에 웹 문서를 요청하고 받아 사용자에게 볼수있도록 출력
인터넷과 웹은 다르다
인터넷
웹의 개념이 나오기 전부터 만들어진 컴퓨터 연결 네트워크
- 1969년 알파넷 개발
- 여러 대학들과 계약 업체 사이의 컴퓨터 연결
컴퓨터마다 고유한 주소(IP 주소)를 부여하여 컴퓨터 구분
인터넷을 활용하는 응용 서비스 사례
전자우편, 뉴스, 채팅(internet relay chat), 파일 전송(ftp), 메신저(messenger), 스트리밍 서비스(streaming service), 인터넷 전화기(internet phone), 월드 와이드 웹(world wide web)
즉, 인터넷을 활용한 응용 서비스중 하나가 웹 이다
월드 와이드 웹, 웹 www
웹 서버와 웹 브라우저로 구성되는 정보 전달 및 공유 서비스
인터넷이 고속도로라면 웹은 고속도로 망을 이용한 물류 산업
웹 역사와 흐름
웹사이트 구축
- 웹 서버로 사용할 컴퓨터에 웹 서버 소프트웨어 설치
- 웹 페이지, 동영상, 이미지 저장, 테이터베이스 설치
- 웹 서버 응용프로그램 개발 및 설치
웹 서버 소프트웨어 기능
- 웹 브라우저로부터 요청(웹 문서/검색) 해석필요한
- 웹 서버 응용프로그램 작동시키기
- 웹 서버 응용프로그램의 실행 결과를 웹 브라우저로 전송
웹 서버 소프트웨어 종류
- Apache 사에서 만든 Apache
- 마이크로소프트 사에서 만들고 window NT에서만 실행되는 IIS
- 구글에서 만들고 구글사이트에서 실행되는 GWS(Google Web Server)
- 등등
웹페이지의 주소 URL
전자문서 와 웹 문서
웹의 시작
Tim Berners-lee의 아이디어에서 시작
- 1989년 웹 개념 제안
- 1990년 WorldWideWeb 프로젝트 시작
- 서버-클라이언트로 동작하는 HTTP 모델 창시
- HTML 언어 개발, 하이퍼링크 개념 구현
- 세계 최초의 웹 서버와 웹 브라우저 개발
- W3CWorld Wide Web Consortium 창설
- HTML 표준을 비롯한 웹 표준안을 제작, 제안하는 일을 하는 국제적인 웹 표준화 단체
웹의 성공
만들기 쉬운 웹 문서
- 사용하기 쉬운 HTML 태그언어, 단순하고 직관적
- HTML 태그의 웹 페이지 텍스트문서
- 아무 텍스트 편집기로 편집 가능
효율적인 HTTP 통신
- 웹 브라우저가 웹 페이지를 모두 전송 받고 나면 웹 서버와의 접속을 끊는 방식
- 웹 서버에 많은 웹 브라우저의 동시 접속에 따른 낮은 부담
웹 서버와 웹 브라우저의 작업 분담
- 웹 서버는 웹 브라우저로부터 요청 받은 자원 전송 담당
- 웹 문서를 출력하는 것은 브라우저의 몫
- 웹 서버의 낮은 부하로 많은 동시 접속자 지원
웹 서버 레벨
웹 서버와 웹 클라이언트의 주요 구성
서버용 하드웨어에서 시스템을 운영하기하기위한 OS가 있고 서버로는 apache 나 IIS 등을 사용하고 이때 이 서버를 통해각각 웹서버 응용어플리케이션을 만들게되는데 개발툴로써 JSP, ASPNET, PHP 등의 언어를 사용
웹 서버와 WAS(Web Application Server)의 차이
WAS 는 웹서버와 웹컨테이너를 아우르는 통합된 단어 이다
WAS = Web Server + Web Container(JSP, Servlet 등)
웹 클라이언트(프론트엔드) 프로그램 구성
- 웹 클라이언트 프로그램 페이지 구성 3요소
- 웹 페이지의 구조와 내용 - HTML
- 웹 페이지의 모양 - CSS(Cascading Style Sheet)
- 웹 페이지의 행동 및 응용 프로그램 - Javascript(표준명칭: ECMAScript)
클라이언트 스크립트 언어
컴파일 없이 웹 브라우저 상에서 직접 수행이 가능한 스크립트 언어로 HTML문서에서 태그로 표현할 수 없는 로직 처리를 담당하기 위해 개발된 언어
웹 서버(백엔드) 프로그램 구성
자바, c#, 루비, 파이썬, 자바스크립트 등으로 개발
다양한 프레임워크
웹 프레임워크(JSP, ASP.NET, PHP 등)
MVC 프레임워크(ASP.NET MVC, Spring MVC, Ruby on Rails 등)
비동기 프레임워크(node.js Express, Jetty)
웹 클라이언트 최신버전 업데이트 역사