검수요청.png검수요청.png

ASP

해시넷
Asadal (토론 | 기여)님의 2020년 9월 15일 (화) 23:55 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
이동: 둘러보기, 검색
ASP(Active Server pages)
ASP(Active Server pages)

ASP(에이에스피)는 Active Server Pages의 약자로서, 미국 마이크로소프트윈도우 서버에서 운영되는 스크립트 방식의 웹 프로그래밍 언어이다. 다른말로 '액티브 서버 페이지' 라고도 불린다.

개요[편집]

마이크로소프트인터넷 정보 서비스 (IIS)에서 동적 웹 페이지 생성하기 위한 목적으로 제작한 서버 측 스크립트 엔진이다. 확장자는 이름명답게 .asp 를 사용한다. 단, 서버 스크립트 언어는 웹 서버가 있어야 사용이 가능하다. 간혹 구글이나 네이버에 딸랑 ASP만 검색하여 ASP.NET의 내용과 ASP를 헷갈려 할 수도 있는데 ASP가 asp.net으로 2002년도에 대체되어 ASP는 하위버전이니 자세히 알아보려면 ASP.NET 항목으로 들어가길 바란다.

역사[편집]

ASP는 처음에 1996년경 윈도 NT 4.0 옵션 팩을 통하여 인터넷 정보 서비스의 추가 기능으로 출시되었다. 나중에 윈도 서버의 무료 구성 요소로 포함이 되었다.[1]

  • 1996년 12월 : ASP 1.0 버전 출시
  • 1997년 09월 : ASP 2.0 버전 출시
  • 2000년 11월 : ASP 3.0 버전 출시
  • 2002년 : ASP.NET 출시

특징[편집]

  • 여러가지의 언어를 지원한다. 기본으로 쓰이는 언어는 비주얼 베이직 계열의 VB 스크립트 이지만, 다른 언어를 불러 쓸 수도 있다
  • Server Side Script를 지원한다. 기존 스크립트는 모두 클라이언트의 몫이였다. 즉 서버는 단순히 클라이언트에게 스크립트 소스 자체를 전송해 주며 이를 전송받은 클라이언트의 브라우저가 스크립트를 분석하여 처리해 주었는데 이 방법은 기존의 클라이언트 스크립트들을 모든 브라우저가 인식하지 못한다는 점과 개발된 스크립트 파일이 전부 공개된다는 문제점이 있었다. Server Side Script는 이 두가지 문제를 해결하기 위해 나온 것으로, ASP로 해결할 수 있는 작업들은 서버에서 모두 처리한 후 클라이언트로 결과를 전송하는 것을 말한다.[2]
  • CreateObject라는 메소드를 통해 서버에서 개체의 인스턴트를 생성하여 그 개체의 속성과 메소드를 간단히 사용 할 수 있다. 이렇게 개체로 만들어 사용 가능한 것들을 서버 컴포넌트라고 하고 DLL형태로 제작된다.
  • ASP 파일확장자는 기본적으로 .asp여야 한다.
  • ASP 문서를 해석하는 해석기는 asp.dll 파일이다.
  • ASP는 사용자가 어떤 페이지를 요청했다고 가정했을 때, 그 페이지를 HTML 페이지처럼 사용자의 브라우저에게 그냥 보내주지는 않는다. 사용자에게 보내주기 이전에 서버내에서 어떤 처리를 하고 그 처리 결과를 태그로 만들어, HTML 형식으로 다 만든 뒤, 그 만들어진 페이지를 사용자의 브라우저에게 보내주는 것이다. 즉 ASP 소스는 일반 클라이언트들이 해킹을 하지 않는 이상 절대로 볼 수 없다.
  • ASP는 웹 사이트개발자와 사용자에게 보다 멋지고 보다 동적이며 서로간의 대화가 가능한 페이지를 만들 수 있게 도와준다.
  • IIS(Internet Infomation Service)에서만 활용이 가능하다.

종류[편집]

ASP 1.0 버전[편집]

1996년 12월 12일 IIS(Internet Information Service) 3.0의 일부로 출시되었다.

ASP 2.0 버전[편집]

ASP 2.0 버전은 6개의 기본 제공 개체를 제공한다. 종류는 Application, ASP Error, Request, Response, Server, Session이 있으며, 이중 'Session' 개체는 페이지마다 변수의 상태를 유지하는 세션을 나타낸다. 동적 스크립팅(Active Scripting) 엔진의 COM (Component Object Model) 지원은 ASP 웹사이트들이 DLL과 같은 컴파일라이브러리들을 함수처럼 접근 가능하게 해 준다.

ASP 3.0 버전[편집]

ASP 3.0 버전은 하위 버전인 ASP 2.0 버전과는 크게 다르지 않지만 Server. Transfer 메소드, Server. Excute 메소드 및 향상된 ASP 에러 개체와 같은 몇 가지의 추가 기능을 제공한다. 또한 기본적으로 버퍼링을 활성화하고 더 나은 성능을 위해 엔진을 최적화한다.

활용[편집]

  • 응답 개체는 페이지 또는 HTTP 쿠키에 텍스트를 쓰는 것과 같이 정보를 클라이언트에 보낼 수 있다.[1]
  • 서버 개체는 데이터베이스(AOD), 파일 시스템 및 서버에 설치된 구성 요소 사용에 연결할 수 있다.
  • 응용 프로그램 개체는 전역 변수를 저장한다.
  • 세션 개체는 단일 방문자만 액세스할 수 있는 변수를 저장한다.
  • Err 개체는 말 그대로 오류 관리를 허용한다.

활용 예[편집]

마이크로소프트의 액티브 스크립팅 표준과 호환되는 어떠한 스크립팅 언어라도 ASP에서 사용할 수 있다. 기본 스크립팅 언어(고전 ASP에서)는 VB스크립트이다. 브라우저가 웹 서버에서 ASP 파일을 요청하면 서버는 프로세서를 호출하고, 프로세서는 요청된 파일을 읽고 스크립트 명령을 실행하여 결과를 웹페이지 형태로 브라우저에 전송한다.

  1. <html>
  2. <body>
  3. <% Response.Write "Hello World!" %>
  4. </body>
  5. </html>

이 예는 "Hello World!"를 HTML 문서의 body로 출력한다.[1]

문제점[편집]

마이크로소프트에서 내놓았다는 것을 보면 예상하겠지만 컴퓨터윈도에만 최적화되어 있어서 다른 서버 OS는 정식으로 지원하지 않는다. 윈도 서버를 쓸 의향이 없는 사람이라면 굳이 쓸 필요가 없기 때문이기도 하고, 2002년도에 ASP.NET로 교체되었기 때문인지 국내에서는 사용자가 많은 편이 아니다. 그리고 서드 파티 제품군이 많이 나와 있으나 전부 유료이며 거대한 기업형 환경에서 유연하지 못하다는 평이다.[3] 또한 ASP는 윈도우 운영체제를 기반으로 작동되기 때문에 윈도우 운영체제에서 발생하기 쉬운 보안문제에 상대적으로 취약하다는 단점이 있다.[4]

평가와 전망[편집]

ASP는 2020년 1월 14일까지 지원이 예정되어 있고, 현재는 신규 프로젝트에는 거의 쓰이지 않고 있는 퇴물 신세이다. 기존에 구축해놓은 솔루션의 유지보수용으로 사용되는 것이 거의 전부이다. [5] 최근에는 객체 지향 패러다임이 들어간 ASP.NET이 그 자리를 대체하는 추세다.

각주[편집]

  1. 1.0 1.1 1.2 ASP〉,《위키백과》
  2. 문득, 하늘을 올려다 보니,〈(웹언어)ASP 소개 및 장단점〉,《티스토리》, 2012-07-22
  3. RoaZium, 〈ASP,PHP,JSP 장단점〉,《티스토리》, 2018-06-26
  4. 공대인들이 직접쓰는 컴퓨터공부방,〈ASP 란?〉,《티스토리》, 2015-04-12
  5. ASP〉,《나무위키》

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 ASP 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.