17. marts 2001 - 13:25Der er
8 kommentarer og 1 løsning
Opdatering ved nyt indhold på siden ...
Hejsa
Jeg er ved at være færdig med mit familiefotoalbum på nettet. Men jeg vil gerne være HELT sikker på, at adgangssiden, hovedsidensiden og siderne med thumbnails ALTID bliver vist korrekt (uden hensyn til brugerens browserindstillinger) - dvs. at der absolut ikke er mulighed for, at siden hentes fra en cache (eller gemmes) - om disse sider så befinder sig i brugerens maskine eller på en anden måde er blevet cachet (f.eks. er jeg på internettet via et lokalt netværk. Jeg tror, at mange at vi har en fælles cache et sted på hovedserveren, men er ikke helt sikker etc..
Hjemmesiden er bygget op således:
1. Adgangskontrolside med information om sidste opdateringsdato.
2. Hovedside med tekst om sidste opdatering samt opdateringsdato
3. Thumbnailssider med links til jpeg-filerne. Opdateres jævnligt.
4. Billederne i fuldstørrelse (jpeg-format)
Det sker ofte, når jeg lige skal tjekke noget efter en opdatering af fotoalbummet, at jeg får vist de gamle html-sider og derfor ikke kan se de nye thumbnails og de nye rettelser i teksten på adgangs- og hovedside (formodentlig fordi de hentes fra min eller min netværksservers cache). Derfor skal jeg hele tiden lige huske at klikke på \"opdater\"-knappen.
Det skulle gerne være sådan, at brugerne ikke selv altid skal huske at klikke på opdateringsknappen for at se de nyeste billeder.
Den/de, der kan give mig en 100% effektiv løsning på dette får/deler 80 point.
men... dette vil jo ALTID medføre at ALLE sider bliver hentet hos brugeren.... HVER gang...
Okay... ganske vidst ses de rigtige sider hver gang, men hvad, hvis de ikke er blevet ændret?
Er der måde, hvormed kun de sider, der er blevet ændret, opdateres hos brugeren? (nu går jeg lidt væk fra cache-problemet og satser istedet for på en korrekt opdateringsproces)
Jeg har brugt koden <META HTTP-EQUIV=\"Cache-Control\" CONTENT=\"no-store\"> <META HTTP-EQUIV=\"Pragma\" CONTENT=\"no-cache\"> på mine sider, men der er et stort problem:
På hver side er der en linje, hvor der står hvornår min hjemmeside sidst er blevet opdateret. Datoen er hentet fra en js-fil (javascript).... MEN... de to html-koder kan selvfølgelig ikke sættes ind i javascriptet (det giver en fejlmelding) og derfor gemmes dette i cachen.
Jeg rettede en del ting på siden i nat, bla. opdateringsdatoen i min fil \"dato.js\", som alle siderne jo henter opdateringsdatoen fra. Men da jeg i dag skulle tjekke hjemmesiden, var opdateringsdatoen ikke den nye, men den gamle....
Hvad gør jeg?
Brugerne skulle gerne ALTID se de NYESTE informationer, billeder mv. - OGSÅ opdateringsdatoen fra javascriptet....
Hverken <META HTTP-EQUIV=\"Expires\" CONTENT=\"0\">, <META HTTP-EQUIV=\"Cache-Control\" CONTENT=\"no-store\"> eller <META HTTP-EQUIV=\"Pragma\" CONTENT=\"no-cache\">!! - heller ikke alle på en gang.
Kun, hvis jeg sletter alle filer i cache-lageret kan jeg få min explorer 5.5 til at vise en ny ændring....
Det virker hos mig og jeg har testet det på følgende måde: (testet i Internet Explorer 5.00.3105)
Jeg har lavet en hovedside som består af to frames (da vi alle ved hvor besværlige frames er netop med cache - så er det den ultimative test). Hver frame indholder en forskellig side.
Første test var at undlade at sætte nogen koder ind på nogen af siderne for at se om de bliver reloaded ved at jeg blot klikker mig over på siden. Efter at have testet lidt med indstillingerne i Exploeren ser man hurtigt hvad for indstilling som virker hos brugeren og hvad som ikke virker. Men da vi ikke kan stille på disse, så er testen nu hvilke af de 3 koder som virker under hvilke forhold!
Derfor testede jeg følgende: På den ene side har jeg i HEAD tag\'en sat alle tre koder:
På den anden side har jeg IKKE sat nogen af tingene ind.
Nu laver jeg ændringer på dem begge, og åbner siden igen. Afhængig af hvilken indstilling man har sat i Cache settings i Exploren - så er det lidt forskelligt om man ser ændringerne på begge sider. Nu går øvelsen så igen på at teste de forskellige Explorer Cache settings mens man laver ændriner i begge sider - for at se om det spiller. Hos mig ser jeg altid ændringerne på den side som indeholder de 3 koder! Ligegyldigt om jeg trykker Refresh eller om jeg blotter klikker mig ind på siden fra et link...... Siden uden koderne bliver sjælendt vist korrekt - med samme resultater fra den første test - selvfølge.
Jeg ved det er \"over-kill\" at have alle 3 koder, men så er man helt sikker på at det spiller.....
**DKOCLNI - Claus
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.