This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources. Find sources: "Active Server Pages" – news · newspapers · books · scholar · JSTOR (February 2015) (Learn how and when to remove this message) This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: "Active Server Pages" – news · newspapers · books · scholar · JSTOR (February 2015) (Learn how and when to remove this message) (Learn how and when to remove this message)
Active Server Pages (ASP)
Stable release
3.0 / February 17, 2000; 24 years ago (2000-02-17)
TypeWeb application framework
LicenseProprietary software Edit this on Wikidata
Active Server Pages
Filename extension
Developed byMicrosoft

Active Server Pages (ASP) is Microsoft's first server-side scripting language and engine for dynamic web pages.

It was first released in December 1996, before being superseded in January 2002 by ASP.NET.


Initially released as an add-on to Internet Information Services (IIS) via the Windows NT 4.0 Option Pack (1996), it is included as a component of Windows Server (since the initial release of Windows 2000 Server). There have been three versions of ASP, each introduced with different versions of IIS:

ASP 2.0 provides six built-in objects: Application, ASPError, Request, Response, Server, and Session. A Session object, for example, represents a session that maintains the state of variables from page to page.[1] The Active Scripting engine's support of the Component Object Model enables ASP websites to access functionality in compiled libraries such as dynamic-link libraries.

ASP 3.0 does not differ greatly from ASP 2.0 but it does offer some additional enhancements such as Server.Transfer method, Server.Execute method, and an enhanced ASPError object. ASP 3.0 also enables buffering by default and optimized the engine for better performance.

ASP was supported until 14 January 2020 on Windows 7.[2] The use of ASP pages will be supported on Windows 8 for a minimum of 10 years from the Windows 8 release date.[2] ASP is currently[when?] supported in all available versions of IIS.[3]


ASP uses scripting on the server to generate content that is sent to the client's web browser via HTTP response. The ASP interpreter reads and executes all script code between <% and %> tags, the result of which is content generation. These scripts were written using VBScript, JScript, or PerlScript. The @Language directive, the <script language="language" runat="server" /> syntax or server configuration can be used to select the language. In the example below, Response.Write Now() is in an HTML page; it would be dynamically replaced by the current time of the server.

Server side Client Side
The server's current time:
Response.Write Now()
The server's current time:
8/11/2015 6:24:45 PM

Web pages with the .asp filename extension use ASP, although some web sites disguise their choice of scripting language for security purposes by using the more common .htm or .html extensions. Pages with the .aspx extension use compiled ASP.NET; however, ASP.NET pages may still include some ASP scripting. The introduction of ASP.NET led to use of the term Classic ASP for the original technology.

Sun Java System ASP (formerly ChiliSoft ASP) was a popular and reportedly complete emulator,[4] but it has been discontinued.

The Server object

The server object allows connections to databases (ADO), filesystem, and use of components installed on the server.

Dim oAdoCon, oAdoRec, oAdoStm, oCdoCon, oCdoMsg, oSciDic, oSciFsm, oMswAdr

Set oAdoCon = Server.CreateObject("ADODB.Connection")
Set oAdoRec = Server.CreateObject("ADODB.Recordset")
Set oAdoStm = Server.CreateObject("ADODB.Stream")
Set oCdoCon = Server.CreateObject("CDO.Configuration")
Set oCdoMsg = Server.CreateObject("CDO.Message")
Set oSciDic = Server.CreateObject("Scripting.Dictionary")
Set oSciFsm = Server.CreateObject("Scripting.FileSystemObject")
Set oMswAdr = Server.CreateObject("MSWC.Swingbridge")

The Application object

This object stores global variables, which are variables accessible to all users.

Application("Ali") = "My ASP Application"
Response.Write "Welcome to " & Server.HTMLEncode(Application("Ali")) & "!"

The Session object

Stores variables accessible only to a single visitor, which are local variables.

If Len(Request.QueryString("name")) > 0 Then
     Session("name") = Request.QueryString("name") 
End If

Response.Write "Welcome " & Server.HTMLEncode(Session("name")) & "!"

The session object is file based and multiple concurrent read and/or write requests will be blocked and processed in turn.

The Err object

Allows the management and fixing of non-fatal errors.

On Error Resume Next

Response.Write 1 / 0 ' Division by zero

If Err.Number <> 0 Then
     Response.Write "Error Code: " & Server.HTMLEncode(Err.Number) & "<br />"
     Response.Write "Error Source: " & Server.HTMLEncode(Err.Source) & "<br />"
     Response.Write "Error Description: " & Server.HTMLEncode(Err.Description) & "<br />"
End If 

See also


  1. ^ The session data is kept server-side, the ID is saved as a HTTP Cookie. Source: ASP and Web Session Management, Microsoft
  2. ^ a b "Active Server Pages (ASP) support in Windows". Support (4.0 ed.). Microsoft. 30 January 2012. Retrieved 11 August 2015.
  3. ^ Source: [1], Microsoft
  4. ^ Weissinger, Keyton (6 October 2009). ASP in a Nutshell: A Desktop Quick Reference. O'Reilly Media, Inc. ISBN 978-1-4493-7959-9. Retrieved 9 October 2013.