仓酷云

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

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

[复制链接]
若相依 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:23:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
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使用中十分主要和有用的一部分。敬请存眷。
缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全
再现理想 该用户已被删除
沙发
发表于 2015-1-17 08:44:48 | 只看该作者
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
莫相离 该用户已被删除
板凳
发表于 2015-1-20 15:55:28 | 只看该作者
下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助...
精灵巫婆 该用户已被删除
地板
发表于 2015-1-29 12:47:54 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
透明 该用户已被删除
5#
发表于 2015-2-6 00:58:47 | 只看该作者
那么,ASP.Net有哪些改进呢?
活着的死人 该用户已被删除
6#
发表于 2015-2-14 19:02:50 | 只看该作者
他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
山那边是海 该用户已被删除
7#
发表于 2015-3-4 09:55:04 | 只看该作者
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
爱飞 该用户已被删除
8#
发表于 2015-3-11 18:12:57 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
乐观 该用户已被删除
9#
发表于 2015-3-19 06:29:09 | 只看该作者
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
飘飘悠悠 该用户已被删除
10#
发表于 2015-3-27 10:11:28 | 只看该作者
从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-9-21 05:44

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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