仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 398|回复: 8
打印 上一主题 下一主题

[学习教程] ASP网页设计ASP教程:第十一篇 ASP内建工具Server

[复制链接]
山那边是海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:42:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

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邮箱设置等等,就像管理本地机一样方便。
小女巫 该用户已被删除
沙发
发表于 2015-1-19 21:23:59 | 只看该作者
兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
小妖女 该用户已被删除
板凳
发表于 2015-1-24 18:42:48 | 只看该作者
多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。
愤怒的大鸟 该用户已被删除
地板
发表于 2015-2-2 11:50:28 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
谁可相欹 该用户已被删除
5#
发表于 2015-2-7 19:26:33 | 只看该作者
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
飘飘悠悠 该用户已被删除
6#
发表于 2015-2-23 05:57:34 | 只看该作者
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
再见西城 该用户已被删除
7#
发表于 2015-3-7 05:52:24 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
简单生活 该用户已被删除
8#
发表于 2015-3-14 12:30:25 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
分手快乐 该用户已被删除
9#
发表于 2015-3-21 08:02:36 | 只看该作者
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 19:05

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表