{{위키데이터 속성 추적}}
{{소프트웨어 정보
| name                   = 액티브 서버 페이지
| logo                   =
| developer              = [[마이크로소프트]]
| latest_release_version = 3.0
| latest_release_date    = {{시작 날짜와 나이|2000|2|17}}
| genre                  = [[웹 애플리케이션 프레임워크]]
| license                = [[사유 소프트웨어|사유]]
| website                =
| wikibooks              = Active Server Pages
}}
{{Infobox file format
| name                   = 액티브 서버 페이지
| logo                   = 
| extension              = .asp
| mime                   = 
| type code              = 
| uniform type           = 
| magic                  = 
| owner                  = [[마이크로소프트]]
| genre                  = 
| container for          = 
| contained by           = 
| extended from          = 
| extended to            = 
| standard               = 
| free                   = 
| url                    = 
}}
'''액티브 서버 페이지'''(Active Server Pages, 줄여서 ASP, 과거 명칭: 클래식 ASP/Classic ASP, ASP 클래식/ASP Classic)는 [[마이크로소프트]]사에서 동적으로 웹 페이지들을 생성하기 위해 개발한 서버 측 스크립트 엔진이다.

ASP 2.0은 6개의 내장 객체들을 제공한다: Application, ASPError, Request, Response, Server, Session. 예를 들어, Session은 페이지 간의 변수의 상태를 유지하는 쿠키 기반의 세션을 나타낸다. 동적 스크립팅 엔진의 컴포넌트 객체 모델(COM) 지원은 ASP 웹사이트들이 DLL들 같은 컴파일 된 라이브러리들을 함수처럼 접근 가능하게 해 준다.

[[ASP.NET]]이 ASP를 대체하고 있다.

== 역사 ==
처음에 1996년 경 [[윈도우 NT 4.0|윈도우 NT 4.0 옵션 팩]]을 통해 [[인터넷 정보 서비스]](IIS)의 추가 기능으로 출시되었으며, 나중에 윈도 서버(윈도우 2000 서버의 최초 버전 이후로)의 무료 구성 요소로 포함되었다. ASP에는 3가지 버전이 있으며 각각 각기 다른 IIS 버전과 함께 도입되었다:<ref>{{웹 인용|url=http://www.visualsolutions-co.com/services/what-is-asp.php|title=Web Design Services offer by Visual Solutions|author=|date=|website=www.visualsolutions-co.com|accessdate=18 March 2018|보존url=https://web.archive.org/web/20170225142738/http://www.visualsolutions-co.com/services/what-is-asp.php|보존날짜=2017-02-25|url-status=dead}}</ref>

* ASP 1.0는 1996년 12월 IIS 3.0의 일부로 출시되었다
* ASP 2.0은 1997년 9월 IIS 4.0의 일부로 출시되었다
* ASP 3.0은 2000년 11월 IIS 5.0의 일부로 출시되었다

== 요약 ==
.asp 파일 확장자를 가진 웹페이지는 ASP를 사용하지만, 몇개의 웹 사이트들은 보안 목적으로 스크립팅 언어를 숨기는 경우도 있다(예를 들면 더 일반적인 .htm 또는 .html 확장자를 사용하기). .aspx 확장자를 가진 페이지들은, ASP에서 서버측 스크립팅 보다 더 빠르고 강력하게 해주는 (마이크로소프트의 .NET 프레임워크 기반의) ASP.NET으로 컴파일되었고, 구동 시에 해석되지만; ASP.NET 페이지들은 여전히 일부 ASP 스크립팅을 포함하고 있을 것이다. ASP.NET의 도입은 원천 기술에 대해서는 오랜 ASP용어를 사용하였다.

프로그래머들은 대부분의 ASP페이지를 VBScript를 사용하여 작성하였지만 그 외에도 동적 스크립팅 엔진은 @Language 지시문이나 <script language="language" runat="server"> 구문으로 선택하여 사용할 수 있다. JScript(마이크로소프트가 구현한 ECMAScript)가 보통 사용가능한 다른 언어이다. PerlScript(Perl의 파생언어)와 다른 것들도 타사 제공 형태로 동적 스크립팅 엔진에 설치해서 사용 가능하다.

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

<syntaxhighlight lang="html4strict" line>
<html>
<body>
</syntaxhighlight>
<syntaxhighlight lang="asp" line start="3">
<% Response.Write "Hello World!" %>
</syntaxhighlight>
<syntaxhighlight lang="html4strict" line start="4">
</body>
</html>
</syntaxhighlight>

더 단순한 형태로는 다음과 같다.

<syntaxhighlight lang="html4strict" line>
<html>
<body>
</syntaxhighlight>
<syntaxhighlight lang="asp" line start="3">
<%= "Hello World!" %>
</syntaxhighlight>
<syntaxhighlight lang="html4strict" line start="4">
</body>
</html>
</syntaxhighlight>

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

여기에는 액세스 데이터베이스로 연결하는 방법에 대한 한 예가 있다.
<syntaxhighlight lang="ASP">
<%
	Set oConn = Server.CreateObject("ADODB.Connection")
	oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("DB.mdb")
	Set rsUsers = Server.CreateObject("ADODB.Recordset")
	rsUsers.Open "SELECT UserID FROM Users", oConn,1,3
%>
</syntaxhighlight>

== 같이 보기 ==
* [[ASP.NET]]

== 각주 ==
{{각주}}

== 외부 링크 ==
* [http://msdn.microsoft.com/en-us/library/aa286483.aspx MSDN의 ASP]
* [https://web.archive.org/web/20090811124702/http://www.w3schools.com/asp/default.ASP w3schools.com의 ASP]

{{자바스크립트}}
{{웹 인터페이스}}
{{전거 통제}}
{{토막글|소프트웨어}}

[[분류:마이크로소프트 API]]