Ønskes: adgangsbegrænsning til bestemte filer, (der fungerer *altid*
Problem: Hvis URL'en : "......./asp/querytest.asp" indtastes to gange i
træk, kommer der første gang et "korrekt" svar om at brugervalidering ikke
lykkedes, mens der anden gang "fejlagtigt" er adgang til den
adgangsbegrænsede side, dog med en asp-fejl i bunden af siden:
--- start fejl ---
Response object error 'ASP 0156 : 80004005'
Header Error
/asp/Querytest.asp, line 3
The HTTP headers are already written to the client browser. Any HTTP
header modifications must be made before writing page content.
--- slut fejl ---
Ud fra fejlen tyder det jo på at min kode forsøger at skriver noget
headerinformation efter der allerede er påbegyndt noget bodyinformation,
og det mener jeg ikke er tilfældet.
Det, som jeg ikke lige forstår er hvorfor den opfører sig anderledes anden
gang den samme URL indtastes.
Session("auth") bliver for resten på intet tidspunkt sat til noget i dette
eksempel.
Nogen der kan spotte fejlen?
Haves: et par filer
- /asp/IsAuth.asp:
--- start ---
<SCRIPT LANGUAGE="vbscript" RUNAT="Server">
if not Session("Auth") = "Y" then
response.Redirect "/filer/uaa.htm"
end if
</SCRIPT>
--- slut ---
- /filer/uaa.htm
--- start ---
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>DEMO</title></head>
<body>
<H1 align="center">Brugervalidering lykkedes ikke</H1>
</body>
</html>
--- slut ---
- /asp/querytest.asp
--- start ---
<!-- #INCLUDE FILE="IsAuth.asp" -->
<html>
<head>
<title>DEMO</title>
</head>
<body>
<h1>Hovsa, der knækkede filmen!</h1>
</body>
</html>
--- slut ---
- /global.asa
--- start ---
<!--==Visual InterDev Generated - startspan==-->
<!--METADATA TYPE="TypeLib"
uuid="{00000205-0000-0010-8000-00AA006D2EA4}"-->
<!--==Visual InterDev Generated - endspan==-->
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Session_OnStart
Response.Buffer=true
End Sub
</SCRIPT>
--- slut ---
Pft.
/Jens Ulrik