Include Problem

ASP

7 svar · 210 visningar · startad av Mr Nils

Medlem sedan jan. 2000640 inlägg
Trådstart#1

Jag har ett underligt problem. Det är så att när jag inkluderar en textfil i en asp fil med

<!--#include virtual="filnamn.txt"-->

Den (include asp filen) laddar den in filen hur fint som helts. När jag sedan med ett annat asp script ändrar på filen och sedan öppnar den igen (med include asp scriptet) så uppdateras inte sidan.

Har reloadat, tömt allt vad som finns i cacheväg, tom kollat i själva textfilen (och ja, den ändras) utan resultat. Enda gången jag får det att fungera är om jag laddar upp asp (den med include) filen igen på servern..

Är det nånslags servercache eller. vad är det som pågår??

Medlem sedan mars 20007 896 inlägg
#2

Jag och en kompis har precis samma problem!
För oss hjälpte det då min kompis startade om datorn! helskumt :)

Jag har iiiiingen aning om vad det beror på, men det skulle vara kul att veta :)

Medlem sedan mars 20002 836 inlägg
#3

hello,

använder man sig av - virtual - så söker den från platsrooten, wwwroot.

Tex.
har en fil som jag vill inkludera från http://www.mrwize.nu/incs/ som heter myincs.txt

Sidan jag vill inkludera den ihttp://www.mrwize.nu/folder/index.asp

Då blir den korrekta sökvägen:

<!--#include virtual="/incs/myincs.txt"-->

använder man sig av include file, så relaterar den från dokumentet filen inkluderas i:

<!--include file="../incs/myincs.txt"-->

Denna sökväg, ../ , funkar ej på alla servrar, beror på inställningarna.

hoppas att det vart liiite klarare,

cya,

Medlem sedan sep. 2000215 inlägg
#4

Hur använder du Response.Expires("hållbarheten" för sidan) och Response.CacheControl(cachkontroll för ec. proxy)?

Medlem sedan juni 2000690 inlägg
#5

För att undvika att sidan cachas så lägg detta överst:

Response.Buffer = True
Response.Expires = -1
Response.AddHeader "Pragma", "no-cache"
Response.AddHeader "cache-control", "no-store"

Observera att sidan då laddas om VARJE gång den visas, även när man backar...

Eller så kan man göra ett knep och skicka med en fejkad parameter beroende av tiden i länken till sidan. Typ så här:

strFakePayload = "ForceReload=" & Server.UrlEncode(Now())

Och länken skrivs: sida.asp?<%=strFakePayload%>

Medlem sedan mars 20007 896 inlägg
#6

Okey, toppen Bengan :e

Jag körde bara med Response.Expires = 5 tidigare... Så den laddades var femte sekund vid omladdning, men inte hjälpte det :)

PatrikB
Ja precis, men det har väl ingen verkan på hur filerna laddas :q
Jag använder ivf INCLUDE FILE...

Medlem sedan jan. 2000640 inlägg
#7

Tänkte just säga det, jag har tet´stat med både virtual och file, inget funkar.

Med om jag döper om sidan till .shtml så funkar det fint.. Lite svårt att ha asp kod då förstås.. *suckar*

Medlem sedan juni 2000690 inlägg
#8

Det har antagligen att göra med hur cachehanteringen på servern är inställd.

Använd koden jag postade ovan så löser det sig nog...

262 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)