我的问题与抓取我网站上的所有活跃用户有关。以下是规格:
- IIS 版本:IIS 8.5
- 服务器:Windows Server 2012 R2
- 根文件夹:D:\Sites\Default\WWWRoot
- 站点目录:D:\Sites\Default\WWWRoot\Website
网站是存储所有页面的目录。这也是在 IIS 中列为默认应用程序池的页面。经典 ASP 是我们使用的默认语言。
最近,我的经理要求我们在页面索引上抓取当前访问我们网站的活跃用户并显示它。
所以我在 WWWRoot 文件夹(不是网站目录)中创建了一个名为 Global.asa 的文件,这是 asa 文件的内容:
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Sub Application_OnStart
application("activevisitors")=0
End Sub
Sub Application_OnEnd
End Sub
Sub Session_OnStart
application.lock
application("activevisitors")=application("activevisitors")+1
application.unlock
End Sub
Sub Session_OnEnd
application.lock
application("activevisitors")=application("activevisitors")-1
application.unlock
End Sub
</SCRIPT>
在存储所有网站页面的网站目录中,我有一个 index.asp 文件,其中添加了以下内容:
有 <% response.write(application("activevisitors")) %> 活跃访问者
当我加载 index.asp 时,它给了我“有活跃的访问者”。但没有数字或计数像它应该做的那样。这是我的问题
- Global.asa 应该位于 WWWRoot 文件夹(当前位于)还是 Websites 文件夹(index.asp 所在的位置)
- 是否需要将 IIS 配置为允许 .asa 文件?我在请求过滤中注意到 .asa 是允许的。
- 代码是否正确?我什至制作了一个虚拟的 asp 页面,看看是否只显示计数器会起作用,但它也不起作用。
- 确认的 ASP 页面
- ASA 代码看起来正确吗?
我通过谷歌搜索查看了这里,没有什么可以给我我需要的帮助。我希望这里有人可以提供一些方向。非常感谢。