Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Måske løsning på for mange sessioner

7 views
Skip to first unread message

runeof...@gmail.com

unread,
Jun 29, 2014, 4:06:53 AM6/29/14
to
Jeg har opdaget, at min hjemmeside efterhånden får rigtigt mange sessionid sat.

Problemet synes at være, at jeg sidder på en host, hvor der er mange andre.

Så når man får en ny session, udløber den forrige ikke.

Jeg har foreløbig denne løsning, som jeg kalder først på hver side:

'Clear all session cookies set by server, but the last one
Sub ClearSessionCookies
Dim SemiSplitArr, SemiSplitUb
Dim SessionCookieName,EqualSplitArr, EqualSplitUb
Dim SessionLen
Dim CookieRaw, Cookie
Dim ii,uu
uu = 0
CookieRaw = HTTP_COOKIE
SemiSplitArr = Split (CookieRaw,";")
SemiSplitUb = uBound(SemiSplitArr)
If SemiSplitUb>1 Then
SessionLen = Len( CookieRaw ) - Len( Replace( CookieRaw,"ASPSESSIONID","") )
SessionLen = (SessionLen/12)
If SessionLen>1 Then
For ii = 0 To SemiSplitUb - 1
If inStr( SemiSplitArr(ii),"ASPSESSIONID") > 0 Then
uu = uu + 1
SessionCookieName = Trim( Split( SemiSplitArr(ii),"=")(0) )
If uu < SessionLen Then
'Session(cookie).Expires = DateAdd("d",-1,now())
Response.AddHeader "Set-Cookie", SessionCookieName & "=" & chr(34) & Chr(34) & "; expires=" & DateAdd("d",-1,now())

'Response.Write SessionCookieName
End If
End If
Next
End If
End If
End Sub

--------------------------

Hvad den gør er, den fjerner alle session cookies, som er sat af serveren, undtagen den sidste (så den fjerner altså ikke session cookies, som er sat af webmaster...)

Det lader til at virke. Når forrige session udløber, kommer der automatisk en ny, så der er to. Scriptet checker, at der nu er mere end én session og fortæller browseren, at den forrige er udløbet.

Det sjove er, at sessionen så vidt jeg forstår er udløbet på serveren, men det ved browseren åbenbart ikke, derfor dette hack.

Hvis nogen har en bedre løsning, må de gerne skrive...


MVH
Rune Jensen

runeof...@gmail.com

unread,
Jun 29, 2014, 4:09:39 AM6/29/14
to
Den søndag den 29. juni 2014 10.06.53 UTC+2 skrev runeof...@gmail.com:

Jeg har så denne som global variabel. Uden den, vil scriptet ikke virke...

HTTP_COOKIE = Request.ServerVariables("HTTP_COOKIE") & ""
MVH
Rune Jensen
0 new messages