Active Server Pages

是怎样工作的？

理解Active Server Pages怎样工作的最好方法将支持它的Web server和不支持的进行对比。Microsoft利用Internet Information Server(IIS)3.0版本和Active Server Pages结合在一起。在IIS3.0中引入了Active Server Pages就能够使站点从仅仅的静态内容变成动态内容。这是什么意思呢？

在前面对Active Server Pages的介绍中，IIS的主要功能是支持静态HTML主页，当用户向一个使用IIS的服务器提出请求后，服务器将会从自己的硬盘或者内存中提出一个静态主页发送到用户的浏览器上，IIS的主要作用就是作为用户浏览器到服务器硬盘的一些文件的一个有效的接口。

注意

早期的IIS版本包括一个称做Internet Database Connector(IDC)的工具，IDC可以从数据库中接受和存储数据，你仍然可以利用IDC做这种工作，但是显然Active Server Pages可以做的更好。

从这个意义上，IIS和其他的Web Server没有什么区别，任何Web Server的主要作用都是支持静态HTML主页，理解其对HTML的支持过程如下步骤所列。

1.

作为一个用户首先是在浏览器的地址栏中添上要访问的主页地址并回车触发这个申请。

2.

浏览器将申请发送到诸如IIS的Web Server上。

3.Web Server

接收这些申请并根据.cfm或.cfml的后缀名意识到这是HTML文件。

4.Web Server

从当前硬盘或内存中读取正确的HTML文件然后将它送回用户浏览器。

5.cfmL

文件将会被用户的浏览器解释并将结果显示在用户浏览器上。

当然，这种过程可能会更加复杂一些，（例如，

Form中的内容以及查询字串的传递）。在大多数情况下，对于各种典型的Web Server来说，这种过程是按部就班的，Web Server接收文件申请并从内存或者硬盘中读取正确的文件。

Active Server Pages

改变了这一切，在IIS仍然支持静HTML主页的前提下，利用Active Server Pages可以根据用户要求在Web Server上建立新的主页。

为了便于理解它和支持静态主页的区别，我们将它分成以下步骤：

1.

一个用户在浏览器的网址栏中添入Active Server Pages文件名称，并回车触发这个Active Server Pages的申请。

2.

浏览器将这个Active Server Pages的求发送给IIS

3.Web Server

接收这个申请要求并由于其.asp的后缀意识到这是个Active Server Pages要求。

4.Web Server

从硬盘或者内存中接收正确的ASP文件。

5.Web Server

将这个文件发送到一个叫做ASP.DLL特定文件中。

6.Active Server Pages

文件将会从头至尾被执行并根据命令要求生成响应的静态主页。

7.cfmL

主页将被送回浏览器

8.cfmL

主页将会被用户浏览器解释执行并显示在用户浏览器上

注意

为了清晰的说明问题，以上步骤已经进行了很大的简化，一个Active Server Pages并不一定每一次都重新编译解释，如果再次接受以前的那个请求而且没有任何变化，Active Server Pages会从Cache中提出结果而不是再次运行。

对于Web Server来说，Active Server Pages于HTML有着本质的区别，HTML是不经任何处理送回给浏览器，而Active Server Pages的每一个命令都首先被用来生成HTML文件，因此、Active Server Pages允许生成动态内容。

另一方面，对于浏览器来说，

Active Server Pages和HTML几乎是没有区别的，仅仅是后缀为.asp和.cfm的区别，当我们在客户端提出Active Server Pages的申请后，我们的浏览器接受的是HTML格式的文件。因此它适用于任何浏览器。