正常访问状态! 设为首页 | 加入收藏夹 | 浏览历史  
  http://www.guosp.com
 碧海澜涛居
  海纳百川,有容乃大。壁立千刃,无欲则刚!
 
 
关键词:
  网站首页 | 关于本站 | 技术资料 | 美文日志 | 读书收藏 | 影视收藏 | 软件收藏 | 摄影相册| 留言板 
  技术资料 >> ASP资料库 关闭(快捷键alt+C)
搜索标签: Global asa
Global.asa正确使用
[阅读次数:1559次]  [发布时间:2010年11月30日]
正确使用global.asa是ASP开发者的一个共同问题。最主要的是要知道什么时候该用  Virtual Application,什么时候该用Virtual directory,并且知道他们的不同。  Virtual Directories(虚拟目录)  简而言之,virtual directories是虚拟出来的,不一定跟web root在同一个的目  录上,可以是其他的。但是你可以像使用web root上的其他目录一样使用它。当  运行global.asa以后,ASP就把所有的虚拟目录看成是应用程序根目录上的子目录。  值得注意,如果你的目录已经是website root上的一个物理目录,那就没有必要  再去为那个目录做虚拟目录了。当然,你有也可以这样做。如果你的目录的路径  实在是太长,长到你无法忍受,想它短一点。你可以用建虚拟目录的方法。使它  短些,容易记住。例如:原来的目录http://mysite.com/directory1/directory  2/file.asp,你可以为它建一个虚拟的目录,http://mysite.com/directory2/fi  le.asp。这样就方便多了了。  Virtual Applications(虚拟应用程序)  Virtual Applications 是一个独立于website的web applications,而它跟Virtual  Directories一样,不一定是web root上的一个目录。可以是从其他的目录虚  拟出来的。ASP不允许应用程序共享他们的application和session变量,换句话说,  就是应用程序A不能访问应用程序B(包括web root,因为web root也是看作一个  应用程序的根。)的application和session变量,他们是私有的。反之亦然。当你  确信这个应用程序不需要与整个website、website上其他子目录上的ASP脚本共享  application和session变量,或者你想在同样的内存空间里隔离一个进程来运行  应用程序时。你使用Virtual Applications是正确的。  要注意的一点是:在IIS 4.0里面的新虚拟目录向导” 所建立的virtual directory  (虚拟目录)缺省就是一个virtual application(虚拟应用程序)。要把它变回  virtual directory的话,你可以在目录的属性”里,选择目录”标签,单击卸载”。  小心使用多个 Global.asa  在一个website里面使用多个Global.asa,我们必须要注意,因为那是很容易导致  变量超出范围而丢失的。通常我们必须限制在整个website上的Global.asa的树木,  在每一个应用程序的的根目录里面放一个。这是保持session和application变  量比较好的方法,不至于它们会丢失。通过在各个目录上放置global.asa文件,  我测试的asp文件,可以帮助我们理解它们的关系。  例子,下面是一个website的设置。在这个website下面有两个目录。一个Virtual  Application(虚拟应用程序)叫admin,一个Virtual Directory(虚拟目录)叫  images。在每一个目录下有2个文件:global.asa和default.asp。每一个目录里的  default.asp都是一样的,global.asa则根据不同的目录有所改变。  这个是default.asp的内容:  <%  Response.Write Session Application_Directory = <b> &  Session(application_directory) & </b><br>  Response.Write Session Virtual_Directory = <b> &  Session(virtual_directory) & </b><br>  Response.Write Session Directory = <b> & Session(directory) & <  /b><br>  %>  website root上global.asa的内容:  SUB Session_OnStart  Session(virtual_directory) = Executed  Session(directory) = Executed  END SUB  当你用浏览器浏览default.asp时,得到的结果是:  Session Application_Directory =  Session Virtual_Directory = Executed  Session Directory = Executed  Virtual directory(虚拟目录) images 上global.asa的内容是(把website root  上的global.asa稍微做修改):  SUB Session_OnStart  Session(virtual_directory) = Virtual Directory  Session(directory) = Virtual Directory  END SUB  用浏览器浏览default.asp(images上的default.asp)时,得到的结果是:  Session Application_Directory =  Session Virtual_Directory = Executed  Session Directory = Executed  虽然在这个目录上的global.asa文件里,我们为session变量赋了新的值。但是显  示的仍然是website root上global.asa所设的值。  Virtual Application(虚拟应用程序) Admin 上 global.asa的内容:  SUB Session_OnStart  Session(application_directory) = Executed  END SUB  用浏览器浏览default.asp(admin上的default.asp)时,得到的结果是:  Session Application_Directory = Executed  Session Virtual_Directory =  Session Directory =  正如你所看到的,Session(virtual_directory)和Session(directory) 的值  不能从root web 那里带”过来。  Global.asa 参考  Global.asa 文件是一个可选文件,用户可以在该文件中指定事件脚本,并声明具  有会话和应用程序作用域的对象。该文件的内容给用户显示的,而是用来存储事  件信息和由应用程序全局使用的对象。该文件的名称必须是 Global.asa 且必须  存放在应用程序的根目录中。每个应用程序只能有一个 Global.asa 文件。  Global.asa 文件只能包含如下内容:  用程序事件(Application_OnStart、Application_OnEnd)  会话事件(Session_OnStart、Session_OnEnd)  <OBJECT> 声明  TypeLibrary 声明  如果包含的脚本没有用 <SCRIPT> 标记封装,或定义的对象没有会话或应用程序  作用域,则服务器将返回错误。服务器会忽略已标记的但未被应用程序或会话事  件使用的脚本以及文件中的 HTML 语句。  可以用任何支持脚本的语言编写 Global.asa 文件中包含的脚本。如果多个事件  使用同一种脚本语言,就可以将它们组织在一组 <SCRIPT> 标记中。  当用户保存对 Global.asa 文件所做的更改时,在重新编译 Global.asa 文件之  前,服务器会结束处理当前应用程序的所有请求。在此期间,服务器拒绝其他请  求并返回一个错误消息,说明正在重启动应用程序,不能处理请求。  当用户当前的所有请求处理完之后,服务器对每个会话调用



本页地址: [复制地址]
该页内容非本站原创 收藏自:http://tech.ccidnet.com/art/1077/20030813/718823_1.html
返回顶部 关闭(快捷键alt+C)
评论统计(0条)| 我要评论
暂无评论内容!
我要评论 
我要评论: 带*部分需要填写
 姓名称呼: * 请填写您的姓名或呢称
联系方式: QQ,MSN,Email都可以,方便交流 (仅管理员可见)
 评论内容: * 不超过100字符,50汉字
验证码:
    
  推荐链接
  最近更新  
·Host 'XXX' is not allowed...
·Win2008或IIS7的文件上传大...
·IIS7.0上传文件限制的解决方...
·测试信息2015-03-11
·asp.net中处理图片
·ASP.NET之Web打印-终极解决...
·Asp.net下C#调用Word模版实...
·asp.net下将页面内容导入到...
·asp.net导出为pdf文件
·asp.net生成pdf文件
·FCKeditor 文本编辑器的使用...
·ASP.NET 将数据生成PDF
·asp.net2.0导出pdf文件完美...
·AspJpeg的安装与测试
·JS验证浏览器版本对IE11的支...
  热门浏览  
·IE8和IE9出现“此网页上的问...
·无线路由器密码破解,教你断...
·js替换所有回车换行符
·QQ/MSN在线交流代码
·IE弹出“中国工商银行防钓鱼...
·如何取消键盘上的一些快捷键...
·win7声音小的解决方法
·webdav漏洞的利用
·强制两端对齐的函数或者CSS...
·win7下成功安装sql server ...
·显示器分辨率调的过高导致电...
·天诺时空技术技术论坛
·js验证手机号码格式
·JS展开和收缩效果(二)
·本地计算机上的 MSSQLSERVE...
  碧海澜涛居
网站首页关于本站站长简介开发案例技术资料美文日志摄影相册读书收藏影视收藏留言板
版权所有:碧海澜涛 QQ:410436434 Email:shaopo_guo@163.com 苏ICP备15000526号
免责声明:本站为个人网站,站内所有文字、图片等各类资料均为个人兴趣爱好所收集,不用作任何商业用途,亦不保证资料的真实性,若有因浏览本站内容而导致的各类纠纷,本站也不承担任何责任。本站部分内容来自互联网,如有涉及到您的权益或隐私请联系站长解决。