日期:2011-01-02 浏览次数:21277 次
可以到在 IIS3.0 中提供了三种服务:WWW、Gopher、FTP,WWW 服务为客户浏览器提交 WEB 页,并允许客户访问 .asp 文件。当然,你可以直接安装最新的 IIS4.0 版本,作者也建议各位安装此版本,因为它具有更强更高的 WEB 管理机能和安全性。在 IIS4.0 中 IIS 的管理界面发生了根本性的改变,熟悉的 Internet 服务管理器,被取而代之为 Microsoft 管理控制台,简称 MMC。其界面如下图:
那么如何安装 I IS4.0 呢 ?在 N T4.0 上 安装 I IS4.0 时 ,你的系统中必须已经安装了 N T SP3 , 以及 I nternet Explorer4.01 , 注意这里的 I nternet Explorer 的 版本必须是 4 .01 , 版本号为 4 .72.3110.8 。 这点很重要,否则你将不能安装 I IS4.0 。 作者为了安装该版本特意花费了一个晚上在微软的站点上升级 I E 版 本。
IIS 支持虚拟目录,通过在“服务器属性”对话框中的“目录”标签可以管理虚拟目录。建立虚拟目录对于管理 WEB 站点具有非常重要的意义。首先,虚拟目录隐藏了有关站点目录结构的重要信息。因为在浏览器中,客户通过选择“查看源代码”,很容易就能获取页面的文件路径信息,如果在 WEB 页中使用物理路径,将暴露有关站点目录的重要信息,这容易导致系统受到攻击。其次,只要两台机器具有相同的虚拟目录,你就可以在不对页面代码做任何改动的情况下,将 WEB 页面从一台机器上移到另一台机器。还有就是,当你将 WEB 页面放置于虚拟目录下后,你可以对目录设置不同的属性,如:Read、Excute、Script。读访问表示将目录内容从 IIS 传递到浏览器。而执行访问则可以使在该目录内执行可执行的文件。当你需要使用 ASP 时,就必须将你存放 .asp 文件的目录设置为“Excute(执行)”。作者建议大家在设置 WEB 站点时,将 HTML 文件同 ASP 文件分开放置在不同的目录下,然后将 HTML 子目录设置为“读”,将 ASP 子目录设置为“执行”,这不仅方便了对 WEB 的管理,而且最重要的提高了 ASP 程序的安全性,防止了程序内容被客户所访问。因为在今年 7 月底的时候 IIS 被一些网络高手发现了一个可怕的 bug,那就是,当你在一个站点的 .asp 文件后加上 ::$DATA 后,客户将能在浏览器中看到该 .asp 文件的所有源代码,这对于一个站点来说是非常可怕的。当然微软已经针对这个 bug,编写了补丁,但是为了彻底杜绝这种可能性的发生,作者还一建议大家不要将 .asp 所在的目录设置为可读。
我想,现在各位应该已经完全了解 ASP 的服务器端设置了,下面我们就进入正题 -- 学习 ASP 的最后一个内建对象 Server。
Server 对象提供对服务器上的方法和属性的访问 , 其中大多数方法和属性是作为实用程序的功能服务的。有了 Server 对象,你就可以在服务器上启动 ActiveX 对象例程,并使用 Active Server 服务提供象 HTML 和 URL 编码这样的函数。 一、语法 Server.property|method
二、属性 ScriptTimeout 超时值,在脚本运行超过这一时间之后即作超时处理。如下代码指定服务器处理脚本在 100 秒后超时。
< % Server.ScriptTimeout=100 %> 这里需要注意的是,通过使用元数据库中的 A spScriptTimeout 属 性可以为 W eb 服 务或 W eb 服 务器设置缺省的 S criptTimeout 值 。 S criptTimeout 属 性不能设置为小于在元数据库中指定的值。例如,如果NumSeconds 设 置为 6 0 , 而元数据库设置包含了默认值 9 0 秒 ,则脚本在 9 0 秒 后超时。
三、方法 1、HTMLEncode 方法
H TMLEncode 方 法允许你对特定的字符串进行 H TML 编 码,虽然 H TML 可 以显示大部分你写入 A SP 文 件中的文本,但是当你需要实际包含 H TML 标 记中所使用的字符,就会遇到问题。这是因为,当浏览器读到这样的字符串时,会试图进行解释。例如下面的这段文本 :
这是对 HTMLEncode 方法的测试。< br> 这里应该不会另起一行。
会被浏览器显示为 :
这是对 HTMLEncode 方法的测试。
这里应该不会另起一行。
为了避免此类问题,我们就需要使用 S erver 对 象的 H TMLEncode 方 法,采用对应的不由浏览器解释的 H TML Character Code 替 代 H TML 标 记字符。所以,用下面的代码才能显示正确的 H TMLEncode 字 符串,从而在浏览器中按你的需要输出文本。
< %
Response.write Server.HTMLEncode(" 这是对 HTMLEncode 方法的测试。< br> 这里应该不会另起一行。")%>
2、URLEncode 方法 就象 H TMLEncode 方 法使客户可以将字符串翻译成可接受的 H TML 格 式一样, S erver 对 象的 U RLEncode 方 法可以根据 U RL 规 则对字符串进行正确编码,当字符串数据以 U RL 的 形式传递到服务器时,在字符串中不允许出现空格,也不允许出现特殊字符。为此,如果你希望在发送字符串之前进行 U RL 编 码,可以使用 S erver.URLEncode 方 法。
3、MapPath 方法 MapPath 方法将指定的相对或虚拟路径映射到服务器上相应的物理目录上。
语法如下 :Server.MapPath(Path)
P ath 指 定要映射物理目录的相对或虚拟路径。若 P ath 以 一个正斜杠 ( /) 或 反斜杠 ( \) 开 始,则 M apPath 方 法返回路径时将 P ath 视 为完整的虚拟路径。若 P ath 不 是以斜杠开始,则 M apPath 方 法返回同 . asp 文 件中已有的路径相对的路径。这里需要注意的是 M apPath 方 法不检查返回的路径是否正确或在服务器上是否存在。
对于下列示例,文件 data.txt 和包含下列脚本的 test.asp 文件都位于目录 C:\Inetpub\Wwwroot\asp