ASP中Global.asa使用方法说明

作者:草履虫 来源:草履虫的blog 时间:2007-11-03 13:18:00 

.asa是文件后缀名,它是Active Server Application的首字母缩写。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的标准文件格式如下:

/*-----------------------Global.asa-------------------------*/
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Sub Application_OnStart
'Application_OnStart 当任何客户首次访问该应用程序的首页时运行
End Sub
Sub Session_OnStart
'Session_OnStart 当客户首次运行 ASP 应用程序中的任何一个页面时运行
End Sub
Sub Session_OnEnd
'Session_OnEnd 当一个客户的会话超时或退出应用程序时运行
End Sub
Sub Application_OnEnd
'Application_OnEnd 当该站点的 WEB 服务器关闭时运行
End Sub
</SCRIPT>

两个关于Global.asa经典的例子:

1.强制进入首页,就是如果第一次访问网站,强制定位到首页的办法:

  <SCRIPT LANGUAGE="VBScript" RUNAT="Server">
    Sub Session_OnStart '只要是用户第一次登录本站,则会跳转到首页
      response.redirect("首页地址")
    End Sub
  </SCRIPT>

2.网站在线人数的统计:

  <SCRIPT LANGUAGE="VBScript" RUNAT="Server">
  Sub Application_OnStart
  ' 当服务器开启时,设置用户计数器为0
  Application("ActiveUsers") = 0
  End Sub
  Sub Session_OnStart
  '设置Session对象的有效时间为20分钟(也可以更长,但是越长对服务器的
  '资源占用越多,因为服务器不接受少于20分钟的有效时间,所以设置少于20
  '分钟的有效时间是无效的)
  Session.Timeout = 20
  ' 当开始一个Session时用户计数器加1
  Application.Lock
  Application("ActiveUsers") = Application("ActiveUsers") + 1
  Application.UnLock
  End Sub
  
  Sub Session_OnEnd
  ' 当结束一个Session时用户计数器减1
  Application.Lock
  Application("ActiveUsers") = Application("ActiveUsers") - 1
  Application.UnLock
  End Sub
  </SCRIPT>

标签:global.asa,global,asp
0
投稿

猜你喜欢

  • 浅谈Python3实现两个矩形的交并比(IoU)

    2021-09-06 19:31:56
  • 仿google的asp分页代码

    2009-03-08 18:27:00
  • Python字符串拼接的几种方法整理

    2021-05-08 18:55:47
  • 为什么首页最后设计

    2009-07-17 19:03:00
  • 跟老齐学Python之关于类的初步认识

    2022-11-04 15:49:36
  • pycharm-professional-2020.1下载与激活的教程

    2023-03-08 08:12:38
  • Safari显示网页字体为超级无敌难看的宋体的原因

    2008-04-20 16:49:00
  • 一个基于flask的web应用诞生 用户注册功能开发(5)

    2021-10-19 00:48:12
  • PyQt5实现用户登录GUI界面及登录后跳转

    2021-04-08 07:50:03
  • .Net行为型设计模式之策略模式(Stragety)

    2024-05-13 09:18:07
  • python GUI库图形界面开发之PyQt5布局控件QGridLayout详细使用方法与实例

    2023-08-29 03:43:39
  • 解决Python spyder显示不全df列和行的问题

    2021-06-23 00:15:47
  • Python 面向切面编程 AOP 及装饰器

    2021-05-07 14:16:36
  • Python中的线程操作模块(oncurrent)

    2021-08-15 14:08:15
  • Python matplotlib生成图片背景透明的示例代码

    2022-07-04 06:22:57
  • python 通过文件夹导入包的操作

    2023-03-10 12:48:24
  • 对python-3-print重定向输出的几种方法总结

    2023-10-21 19:38:58
  • python中字符串数组逆序排列方法总结

    2023-04-18 07:19:08
  • vue 获取视频时长的实例代码

    2024-04-09 10:49:16
  • 解析PHP观察者模式Observer

    2023-07-08 13:38:58
  • asp之家 网络编程 m.aspxhome.com