인터넷:
- 다수의 컴퓨터를 연결시킨 네트워크 (하드웨어적 개념)
- APPANET이 시초(러시아의 인공위성 발사 성공에 위협을 느낀 미국방성에서 국방성, 연구소, 대학교를 연결)
웹:
- 월드 와이드 웹(World Wide Web)
- 인터넷에서 동작하는 서비스 중 하나(소프트웨어적 개념)
- 하이퍼링크 지원
HTTP(Hyper-Text Transfer Protocol) 특징:
- 통신을 위해서 사용
- Hyper-Text, 즉 HTML 문서를 전송하기 위한 프로토콜
- HTML 문서를 요청하고 응답 받기 위한 통신규약 (요청과 응답으로 이루어짐)
- 문서 요청 과정에서 url 이용
URL(Uniform Resource Location):
- HTML 문서의 주소
- URL = [1. 프로토콜] :// [2. 서버주소] : [3. 포트번호] / [4.파일경로]
- 프로토콜: http 또는 https (보통 자동으로 http 추가)
- 서버주소: 숫자 형식의 IP 주소 (ex. www. naver.com)
- 포트번호: 80번 (운영 체제에서 네트워크 서비스나 특정 프로세스 식별을 위한 논리적 단위)
- 파일경로: 서버 내 웹 페이지가 위치한 디렉토리 주소(옵션, 디폴트는 index.html)
요청 파일이 없을시 404 에러 제출
Static Web vs. Dynamic Web
- 초창기 웹은 HTML 문서만 보여주는 정적 웹 서비스
- 점점 사용자 입력에 따라 페이지를 다르게 보여주기 위한 필요성 생김
동적 웹 프로그래밍 기술
- CGI(Common Gateway Interface): 사용자 입력을 받아들이고 전송하기 위한 기본 틀, C언어가 기반이라 프로세스 이용한 요청 처리에서 한계점
- ASP(Active Server Page) from MS: Visual Basic 기반, 스레드 이용해서 요청 처리, 비용 지불, 플랫폼에 의존적(Internet Information Server only)
- Servlet and JSP(Java Server Page) from Sun Microsystems: 우리가 이용할 해결책
- Java 기반이고 스레드를 이용해서 요청을 처리
- 플랫폼에 독립적이고 무료임 -> 자주 사용한 PHP와 대중적으로 이용