日期:2010-11-11  浏览次数:20916 次

Server 对象提供对服务器上的方法和属性的访问。其中大多数方法和属性是作为实用程序的功能服务的。

语法
Server.property|method

ScriptTimeout
ScriptTimeout 属性指定脚本在结束前最大可运行多长时间。

当处理服务器组件时,超时限制将不再生效。

语法
Server.ScriptTimeout = NumSeconds

参数
NumSeconds
指定脚本在被服务器结束前最大可运行的秒数。默认值为 90 秒。
注释
通过使用元数据库中的 AspScriptTimeout 属性可以为 Web 服务或 Web 服务器设置缺省的 ScriptTimeout 值。ScriptTimeout 属性不能设置为小于在元数据库中指定的值。例如,如果 NumSeconds 设置为 10,而元数据库设置包含了默认值 90 秒,则脚本在 90 秒后超时。但如果 NumSeconds 设置为 100,则脚本在 100 秒后超时。

关于使用元数据库的详细信息,参阅 关于元数据库。

示例
以下示例中,如果服务器处理脚本超过 100 秒,将使之超时。

<% Server.ScriptTimeout = 100 %>

以下示例获取 ScriptTimeout 属性当前值,并将其存储在变量 TimeOut 中。

<% TimeOut = Server.ScriptTimeout %>

CreateObject
CreateObject 方法创建服务器组件的实例。如果该组件执行了 OnStartPage 和 OnEndPage 方法,则此时就会调用 OnStartPage 方法。

语法
Server.CreateObject( progID )

参数
progID
指定要创建的对象的类型。progID 的格式为 [Vendor.] component[.Version]。
注释
默认情况下,由 Server.CreateObject 方法创建的对象具有页作用域。这就是说,再当前 ASP 页处理完成之后,服务器将自动破坏这些对象。

要创建有会话或应用程序作用域的对象,可以使用 <OBJECT> 标记并设置 SESSION 或 APPLICATION 的 SCOPE 属性,也可以在对话及应用程序变量中存储该对象。

例如,在如下所示的脚本中,当 Session 对象被破坏,即当对话超时时或 Abandon 方法被调用时,存储在会话变量中的对象也将被破坏。

<% Set Session("ad") = Server.CreateObject("MSWC.AdRotator")%>

可以通过将变量设置为 Nothing 或新的值来破坏对象,如下所示。第一个例子释放 ad 对象,第二个例子用字串代替 ad 。

<% Session ("ad") = Nothing %>
<% Session ("ad") = " Other Valum " %>

不能创建与内建对象同名的对象实例。 例如,下列脚本将返回错误。

<% Set Response = Server.CreateObject("Response") %>

示例
<% Set MyAd = Server.CreateObject("MSWC.AdRotator") %>

上面的例子创建一个名为 MyAd 的 MSWC.AdRotator 服务器组件,MSWC.AdRotator 组件可用于在 Web 页上的自动轮换广告。

HTMLEncode
HTMLEncode 方法对指定的字符串应用 HTML 编码。

语法
Server.HTMLEncode( string )

参数
string
指定要编码的字符串。
示例
脚本

<%= Server.HTMLEncode("The paragraph tag: <P>") %>

输出

The paragraph tag: <P>

注意 以上输出将被 Web 浏览器显示为

The paragraph tag: <P>

如果查看一下源文件或以文本方式打开一个 Web 页,您就可以看到已编码的 HTML。

MapPath
MapPath 方法将指定的相对或虚拟路径映射到服务器上相应的物理目录上。

语法
Server.MapPath( Path )

参数
Path
指定要映射物理目录的相对或虚拟路径。若 Path 以一个正斜杠 (/) 或反斜杠 (\) 开始,则 MapPath 方法返回路径时将 Path 视为完整的虚拟路径。若 Path 不是以斜杠开始,则 MapPath 方法返回同 .asp 文件中已有的路径相对的路径。
注释
MapPath 方法不支持相对路径语法 (.) 或 (..)。例如,下列相对路径 ../MyDir/MyFile.txt 返回一个错误。

MapPath 方法不检查返回的路径是否正确或在服务器上是否存在。

因为 MapPath 方法只映射路径而不管指定的目录是否存在,所以,您可以先用 MapPath 方法映射物理目录结构的路径,然后将其传递给在服务器上创建指定目录或文件的组件。

示例
对于下列示例,文件 data.txt 和包含下列脚本的 test.asp 文件都位于目录 C:\Inetpub\Wwwroot\Script 下。C:\Inetpub\Wwwroot 目录被设置为服务器的宿主目录。

下列示例使用服务器变量 PATH_INFO 映射当前文件的物理路径。脚本

<%= server.mappath(Request.ServerVariables("PATH_INFO"))%>

输出

c:\inetpub\wwwroot\script\test.asp

由于下列示例中的路径参数不是以斜杠字符开始的,所以它们被相对映射到当前目录,此处是 C:\Inetpub\Wwwroot\Script。脚本

<%= server.mappath("data.txt")%>
<%= server.mappath("script/data.txt")%>

输出

c:\inetpub\wwwroot\script\data.txt
c:\inetpub\wwwroot\script\script\data.txt //aspxuexi.com

接下来的两个示例使用斜杠字符指定返回的路径应被视为在服务器的完整虚拟路径。脚本

<%= server.mappath("/script/data.txt")%>
<%= server.mappath("\script")%>

输出

c:\inetpub\script\data.txt
c:\inetpub\script

下列示例演示如何使用正斜杠 (/) 或反斜杠 (\) 返回宿主目录的物理路径。脚本

<%= server.mappath("/")%>
<%= server.mappath("\")%>

输出

c:\inetpub\wwwroot
c:\inetpub\wwwroot 


URLEncode
URLEncode 方法将 URL 编码规则,包括转义字符,应用到指定的字符串。

语法
Server.URLEncode( string )

参数
String
指定要编码的字符串。