ASP 최종 수정일 2026-06-19 01:52 조회수 7
대시보드

ASP

기본 정보

  • 이름: ASP (Active Server Pages)
  • 분류: 서버 사이드 스크립트 기술
  • 개발사: Microsoft
  • 최초 공개: 1996년
  • 실행 환경: IIS (Internet Information Services)
  • 기본 언어: VBScript, JScript
  • 주요 용도: 동적 웹페이지 개발, 기업 웹 시스템
  • 관련 주제: #ASP #VBScript #IIS #백엔드 #웹개발

개요

ASP(Active Server Pages)는 Microsoft에서 개발한 서버 사이드 웹 기술이다.

HTML 안에 VBScript 또는 JScript 코드를 삽입하여 동적인 웹페이지를 생성할 수 있으며, 1990년대 후반부터 2000년대 초반까지 기업 홈페이지, 쇼핑몰, 게시판, 그룹웨어 등에서 널리 사용되었다.

현재는 대부분 ASP.NET 또는 ASP.NET Core로 대체되었지만, 많은 레거시 시스템에서 여전히 운영되고 있다.


주요 특징

  • 서버에서 실행
  • HTML과 스크립트 혼합 가능
  • IIS 기반 실행
  • COM(Component Object Model) 지원
  • ADO를 통한 데이터베이스 연동
  • Windows 서버 환경에 최적화

실행 구조

브라우저

↓

ASP 요청

↓

IIS

↓

VBScript 실행

↓

HTML 생성

↓

브라우저 출력

기본 예제

<%

Response.Write("Hello ASP")

%>

변수

<%

Dim name

name = "구름"

Response.Write(name)

%>

Dim 키워드로 변수를 선언한다.


조건문

<%

If age >= 20 Then

    Response.Write("성인")

Else

    Response.Write("미성년자")

End If

%>

반복문

<%

For i = 1 To 5

    Response.Write(i)

Next

%>

함수

<%

Function Add(a,b)

    Add = a+b

End Function

%>

HTML과 함께 사용

<h1>

<%= name %>

</h1>

<%= %> 구문은 값을 화면에 출력할 때 사용한다.


Form 데이터 받기

<%

name = Request.Form("name")

%>

QueryString

<%

id = Request.QueryString("id")

%>

URL 파라미터를 가져올 수 있다.


Session

<%

Session("id") = "admin"

%>

조회

Session("id")

로그인 상태 유지 등에 활용된다.


Cookie

<%

Response.Cookies("user") = "cloud"

%>

브라우저에 데이터를 저장할 수 있다.


데이터베이스 연결 (ADO)

Set conn = Server.CreateObject("ADODB.Connection")

conn.Open connectionString

Classic ASP에서는 ADO를 사용하여 데이터베이스와 연결한다.


SQL 실행

sql = "SELECT * FROM member"

Set rs = conn.Execute(sql)

Recordset 조회

Do Until rs.EOF

Response.Write(rs("mb_name"))

rs.MoveNext

Loop

Include

<!--#include file="header.asp"-->

공통 파일을 포함할 때 사용한다.


Server 객체

대표 메서드

  • Server.MapPath()
  • Server.CreateObject()
  • Server.URLEncode()
  • Server.HTMLEncode()

예시

Server.MapPath("/")

실제 서버 경로를 반환한다.


주요 객체

객체설명
Request요청 데이터
Response응답 출력
Session세션 관리
Server서버 기능
Application전역 데이터
ObjectContext트랜잭션 관리

주요 활용 분야

  • 기업 홈페이지
  • 쇼핑몰
  • 게시판
  • 그룹웨어
  • ERP
  • 회원관리 시스템
  • 레거시 업무 시스템

장점

  • 배우기 쉬운 문법
  • HTML과 쉽게 결합
  • Windows 서버 환경에 최적화
  • 빠른 웹 개발 가능
  • IIS와 높은 호환성

단점

  • VBScript 기반으로 확장성이 제한적
  • 객체지향 기능 부족
  • 유지보수가 어려운 구조가 되기 쉬움
  • 최신 웹 기술 대비 생산성이 낮음
  • 신규 프로젝트에서는 거의 사용되지 않음

실무 메모

레거시 ASP 유지보수 시 권장 사항

  • SQL Injection 방지를 위한 입력값 검증
  • Server.HTMLEncode()로 XSS 방지
  • 공통 함수 분리
  • Include 파일 구조 개선
  • DB 연결 객체 명시적 종료
  • Option Explicit 사용으로 변수 선언 강제
  • UTF-8 환경 적용 검토
  • 가능하다면 ASP.NET 또는 최신 기술로 점진적 마이그레이션 고려

ASP와 함께 사용하는 기술


ASP와 ASP.NET의 차이

ASPASP.NET
VBScript 기반C#, VB.NET 기반
스크립트 방식컴파일 방식
객체지향 지원 제한완전한 객체지향 지원
유지보수 어려움구조화된 개발 가능
레거시 시스템 중심현재 Microsoft 웹 개발 표준

관련 문서


출처

  • Microsoft IIS Documentation
  • Microsoft Legacy ASP Documentation
  • 위키백과 「Active Server Pages」