答案: 创建日志文件
--------------------------------------------------------------------------------
你是否有对谁访问你的站点感到兴趣?并在什么时候和访问你的哪个URL?这里有一个创建日志文件例子,用于跟踪用户访问你的站点。
这个例子把用户的一些信息写进文本文件里面,想要知识怎样创建文本文件,请看以前的例子。
创建一个LogFile.asp的文件名,其ASP代码如下所示,并把这个文件以Include的形式放在你每个页面就可以了,即:
<!--#Include File="LogFile.asp"-- >
当用户访问到你有加上LogFile.asp的页面时,用户的信息将会写进LogFile.txt里面。
文件名: LogFile.asp
<%
Dim ValidLog ' 日志变量
' 首先设置这个日志是有效的。
ValidEntry = True
'如果Session变量“LogIn”不为空
' 则表名用户的信息已经写进去
If not IsEmpty(Session("LogIn")) then ValidEntry = False
' 这里你可以加上不同的限制
' 如果访问同一个URL
' 则不要写进日志文件里面
If Left(Request.ServerVariables("HTTP_REFERER"), 17)="http://devasp.com" Then
ValidEntry = False
End if
If Left(Request.ServerVariables("HTTP_REFERER"), 21)="http://www.devasp.com" Then
ValidEntry = False
End If
' 如果ValidEntry为真,则写到日志文件里面
If ValidEntry Then
Const ForAppending = 8
Const Create = true
Dim FSO
DIM TS
DIM MyFileName
Dim strLog
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
Set TS = FSO.OpenTextFile(MyFileName, ForAppending, Create)
' 保存必须的信息
strLog = "<br><P><B>" & now & "</B> "
strLog = strLog & Request.ServerVariables("REMOTE_ADDR") & " "
strLog = strLog & Request.ServerVariables("HTTP_REFERER") & " "
strLog = strLog & Request.ServerVariables("HTTP_USER_AGENT") & "<BR>"
' 把当前的信息写进文本文件里面
TS.write strLog
TS.Writeline ""
' 创建一个session变量,用于检查下次ValidEntry的值
Session("LogIn") = "yes"
Set TS = Nothing
Set FSO = Nothing
End If
%>
(转自网猴)
上一个:利用ASP显示当前在线人数
下一个:W3 Jmail 简要介绍