用ASP创建日志文件(附源程序)

  这个例子使用文本文件来写入用户的信息创建一个logfile.asp放在每一个asp的页面的顶端<!--#Include File="LogFile.asp"-->当有人来访问你的站点logfile.asp自动把他的信息写入LogFile.txt,如果相关的URl一样的话则不写入文件

  File: LogFile.asp

  

复制代码 代码如下:

  <%

  Dim ValidEntry ' Log variable

  ' First set that this log is valid

  ValidEntry = True

  ' If Session Variable "LogIn" is not empty

  ' that mean this person has already been logged

  ' then set ValidLog to False

  If not IsEmpty(Session("LogIn")) then ValidEntry = False

  ' Here you can add different restriction

  ' If the refering url is from same site

  ' don't write to log file

  If Left(Request.ServerVariables("HTTP_REFERER"), 17)

  ="http://glzy8.com" Then

  ValidEntry = False

  End if

  If Left(Request.ServerVariables("HTTP_REFERER"), 21)

  ="http://www.glzy8.com" Then

  ValidEntry = False

  End If

  ' Now if ValidEntry is True then enter to log file

  If ValidEntry Then

  Const ForAppending = 8

  Const Create = true

  Dim FSO

  DIM TS

  DIM MyFileName

  Dim strLog

  MyFileName = Server.MapPath("MyLogFile.txt")

  Set FSO = Server.CreateObject("Scripting.FileSystemObject")

  Set TS = FSO.OpenTextFile(MyFileName, ForAppending, Create)

  ' Store all required values in strLog

  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>"

  ' Write current information to Log Text File.

  TS.write strLog

  TS.Writeline ""

  ' Create a session varialbe to check next time for ValidEntry

  Session("LogIn") = "yes"

  Set TS = Nothing

  Set FSO = Nothing

  End If

  %>