ASP的Global.asa使用说明

2018-09-06 13:00

阅读:368

  /*-------------------ASP文档参考集-----------------------*/
*-->作者:草履虫
*-->时间:2007-4.28---2007-4.30(原来是自己编写的手册,现在发在这里)
*-->联系
*-->文档功能:
1.复习了ASP,加深了对ASP结构的理解和ASP的体会
2.可以用来做ASP参考,自己写的,参考起来更方便

这是第四部分:Global.asa

/*---------------------------关于ASP组件------------------------*/
ASP组件就不叙述了,遇到重要的组件(主要是第三方的组件),如上传组件等等,再专门
介绍
/*==============================END==================================*/

/*-----------------------Global.asa-------------------------*/
.asa是文件后缀名,它是ActiveServerApplication的首字母缩写。Global.asa文件可以
管理在ASP应用中两个非常苛刻的对象:Application、Session
Global.asa是一个可选文件,程序编写者可以在该文件中指定事件脚本,并声明具有会话和
应用程序作用域的对象。该文件的内容不是用来给用户显示的,而是用来存储事件信息和由
应用程序全局使用的对象。该文件必须存放在应用程序的根目录内。每个应用程序只能有一
个Global.asa文件
关于Global.asa文件最常见的错误概念是它能为一般的使用的函数和子程序用作书库。Global.asa文件仅能用于创建对象的引用和俘获启动,以及结束Application对象和Session对象。
Global.asa文件主要基于会话级事件被访问,在以下三种情况下被调用:
1.当Application_OnStart或Application_OnEnd事件被触发。
2.当Session_OnStart或Session_OnEnd事件被触发。
3.当引用一个在Global.asa文件里被实例化的对象(Object)。


Global.asa的标准文件格式如下:
<SCRIPTLANGUAGE=VBScriptRUNAT=Server>
SubApplication_OnStart
Application_OnStart当任何客户首次访问该应用程序的首页时运行
EndSub

SubSession_OnStart
Session_OnStart当客户首次运行ASP应用程序中的任何一个页面时运行
EndSub

SubSession_OnEnd
Session_OnEnd当一个客户的会话超时或退出应用程序时运行
EndSub

SubApplication_OnEnd
Application_OnEnd当该站点的WEB服务器关闭时运行
EndSub
</SCRIPT>

两个关于Global.asa经典的例子:
1.强制进入首页,就是如果第一次访问网站,强制定位到首页的办法:
<SCRIPTLANGUAGE=VBScriptRUNAT=Server>
SubSession_OnStart只要是用户第一次登录本站,则会跳转到首页
response.redirect(首页地址)
EndSub
</SCRIPT>

2.网站在线人数的统计:
<SCRIPTLANGUAGE=VBScriptRUNAT=Server>
SubApplication_OnStart
当服务器开启时,设置用户计数器为0
Application(ActiveUsers)=0
EndSub

SubSession_OnStart
设置Session对象的有效时间为20分钟(也可以更长,但是越长对服务器的
资源占用越多,因为服务器不接受少于20分钟的有效时间,所以设置少于20
分钟的有效时间是无效的)
Session.Timeout=20
当开始一个Session时用户计数器加1
Application.Lock
Application(ActiveUsers)=Application(ActiveUsers)+1
Application.UnLock
EndSub

SubSession_OnEnd
当结束一个Session时用户计数器减1
Application.Lock
Application(ActiveUsers)=Application(ActiveUsers)-1
Application.UnLock
EndSub
</SCRIPT>


评论


亲,登录后才可以留言!