|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
结论:和PHP一样,ASP简单而易于维护,很适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常困难。经由过程前九篇的实际和理论,信任人人已对ASP有了体系的懂得,固然至今为止,我们只学了ASP的4个内建工具,但已完整可以写出一些有用的小程序了。明天,作者将持续给人人解说最初一个ASP内建工具――Server。 在入手下手本次课程之前,我仍要在这里回覆一些伴侣们提出的对照广泛的成绩。比来仍有很多伴侣来信问我,怎样构建服务器真个ActiveServerPage情况。我想多是我在前几篇中没有讲分明,因而,在本篇的开首有需要把这个成绩具体论述一遍。
ASP的使用完整是基于MicrosoftInternetInfomationServer(简称IIS)之上的,IIS有分离用于WindowsNTServer和WorkStation的两个版本中(固然IIS4.0也有Windows98版,这里临时不提),其功效几近完整不异,所分歧的只是安装历程。一样平常来讲,我们利用的都是基于NT服务器上的IIS版本。在NTServer的情况中,公布信息、办理站点的事情一样平常都是经由过程IIS来完成的。一般我们在NT4.0版本中运转的是IIS2.0版,但它不具有撑持ASP的功效。ASP必需在安装完IIS后独自安装,安装文件是一个微软公布的ASP安装包,约莫有9兆多,应当能够在微软的网站高低载。当IIS2.0中增加了撑持ASP的功效后,其也就主动晋级为3.0版本。2.0和3.0关于WEB服务器来讲,并没有甚么年夜的修改,只是纯真地增添了运转ASP的才能。当安装完成后,运转Internet服务办理器,你将看到以下画面:
能够到在IIS3.0中供应了三种服务:WWW、Gopher、FTP,WWW服务为客户扫瞄器提交WEB页,并同意客户会见.asp文件。固然,你能够间接安装最新的IIS4.0版本,作者也倡议列位安装此版本,由于它具有更强更高的WEB办理性能和平安性。在IIS4.0中IIS的办理界面产生了基本性的改动,熟习的Internet服务办理器,被取而代之为Microsoft办理把持台,简称MMC。其界面以下图:
那末怎样安装IIS4.0呢?在NT4.0上安装IIS4.0时,你的体系中必需已安装了NTSP3,和InternetExplorer4.01,注重这里的InternetExplorer的版本必需是4.01,版本号为4.72.3110.8。这点很主要,不然你将不克不及安装IIS4.0。作者为了安装该版本特地消费了一个早晨在微软的站点上晋级IE版本。
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工具例程,并利用ActiveServer服务供应象HTML和URL编码如许的函数。
1、语法
Server.property|method
2、属性
ScriptTimeout超时价,在剧本运转凌驾这一工夫以后即作超时处置。以下代码指定服务器处置剧本在100秒后超时。
<%Server.ScriptTimeout=100%>
这里必要注重的是,经由过程利用元数据库中的AspScriptTimeout属性能够为Web服务或Web服务器设置缺省的ScriptTimeout值。ScriptTimeout属性不克不及设置为小于在元数据库中指定的值。比方,假如NumSeconds设置为60,而元数据库设置包括了默许值90秒,则剧本在90秒后超时。
3、办法
1、HTMLEncode办法
HTMLEncode办法同意你对特定的字符串举行HTML编码,固然HTML能够显现年夜部分你写进ASP文件中的文本,可是当你必要实践包括HTML标志中所利用的字符,就会碰到成绩。这是由于,当扫瞄器读到如许的字符串时,会试图举行注释。比方上面的这段文本:
这是对HTMLEncode办法的测试。<br>这里应当不会另起一行。
会被扫瞄器显现为:
这是对HTMLEncode办法的测试。
这里应当不会另起一行。
为了不此类成绩,我们就必要利用Server工具的HTMLEncode办法,接纳对应的不由扫瞄器注释的HTMLCharacterCode替换HTML标志字符。以是,用上面的代码才干显现准确的HTMLEncode字符串,从而在扫瞄器中按你的必要输入文本。
<%
Response.writeServer.HTMLEncode("这是对HTMLEncode办法的测试。<br>这里应当不会另起一行。")%>
2、URLEncode办法
就象HTMLEncode办法使客户能够将字符串翻译成可承受的HTML格局一样,Server工具的URLEncode办法能够依据URL划定规矩对字符串举行准确编码,当字符串数据以URL的情势传送到服务器时,在字符串中不同意呈现空格,也不同意呈现特别字符。为此,假如你但愿在发送字符串之行进行URL编码,可使用Server.URLEncode办法。
3、MapPath办法
MapPath办法将指定的绝对或假造路径映照到服务器上响应的物理目次上。
语法以下:Server.MapPath(Path)
Path指定要映照物理目次的绝对或假造路径。若Path以一个正斜杠(/)或反斜杠()入手下手,则MapPath办法前往路径时将Path视为完全的假造路径。若Path不是以斜杠入手下手,则MapPath办法前往同.asp文件中已有的路径绝对的路径。这里必要注重的是MapPath办法不反省前往的路径是不是准确或在服务器上是不是存在。
关于以下示例,文件data.txt和包括以下剧本的test.asp文件都位于目次C:InetpubWwwrootasp下。C:InetpubWwwroot目次被设置为服务器的宿主目次。以下示例利用服务器变量PATH_INFO映照以后文件的物理路径。以下剧本
<%=server.mappath(Request.ServerVariables("PATH_INFO"))%>
输入
c:inetpubwwwrootasp est.asp
因为以下示例中的路径参数不是以斜杠字符入手下手的,以是它们被绝对映照到以后目次,此处是目次C:InetpubWwwrootasp。以下剧本
<%=server.mappath("data.txt")%>
<%=server.mappath("asp/data.txt")%>
输入
c:inetpubwwwrootaspdata.txt
c:inetpubwwwrootaspaspdata.txt
4、CreateObject办法
Server.CreateObject生怕是ASP中最为有用,也是最微弱的功效了。它用于创立已注册到服务器上的ActiveX组件实例。这是一个十分主要的特征,由于经由过程利用ActiveX组件可以使你轻松地扩大ActiveX的才能,恰是利用了ActiveX组件,你能够完成相当主要的功效,比如数据库毗连、文件会见、告白显现和其他VBScript不克不及供应或不克不及复杂地依托独自利用ActiveX所能完成的功效。恰是由于这些组件才使得ASP具有了壮大的性命力。
其语法以下:
Server.CreateObject("ComponentName")
默许情形下,由Server.CreateObject办法创立的工具具有页感化域。这就是说,再以后ASP页处置完成以后,服务器将主动损坏这些工具。假如要创立有会话或使用程序感化域的工具,可使用<OBJECT>标志并设置SESSION或APPLICATION的SCOPE属性,也能够在对话及使用程序变量中存储该工具。以下例程:
<%SetSession("ad")=Server.CreateObject("MSWC.AdRotator")%>
这里必要注重的是,不克不及创立与内建工具同名的工具实例,不然,以下列剧本将前往毛病。
<%SetResponse=Server.CreateObject("Response")%>
至今为止,我们已进修完了ASP一切的内建工具,不知人人是否是很镇静?实在ASP是很复杂的,只需人人不休的理论,信任一段工夫后都不难成为ASP的妙手。从下一篇起作者将入手下手先容ASP内建ActiveX组件,这也是ASP使用中十分主要和有用的一部分。敬请存眷。
使用cdonts,可以发送、查看邮件,实现webmail的功能。结合wsh,可以实现对nt主机的管理,如nt用户管理、iis虚拟主机设置、exchange邮箱设置等等,就像管理本地机一样方便。 |
|