Googles PageSpeed-plugin foreslår, at et websted skal indeholde sidst modificerede og ETag-overskrifter:

Angiv en cache-validator "Ressourcer, der ikke angiver en cache-validator, kan ikke opdateres effektivt. Angiv en sidst modificeret eller ETag-overskrift for at aktivere cache-validering"

Apache foreslår dog, at ved ikke at medtage dem overhovedet, fremskynder vi websteder ved at fjerne If-Modified-Since og If-None-Match-anmodninger:

http://www.askapache.com/htaccess/apache-speed-last-modified.html

disse er i direkte opposition - hvilket skal implementeres? Jeg læner mig mod Apache's forslag, som når jeg vil have en fil cachelagret, vil jeg ikke have den opdateret.

Pointen er at få browseren til at cache ressourcer, som dit websted bruger, hvor det er muligt, da dette reducerer enten HTTP-anmodninger eller data, der overføres, som begge hjælper hastigheden. Du gør dette enten ved at indstille udløbsoverskrifter, som beder browseren om at cache ressourcen indtil det angivne tidspunkt; eller ved at bruge Last Modified / Etags, som giver browseren en måde at finde ud af, om den ressource, den tidligere har cache, skal opdateres.

Den tipsside, du linkede til (som ikke er en officiel Apache-ressource), siger:

Hvis du fjerner sidst modificeret og ETag-overskrift, fjerner du fuldstændigt If-Modified-Since og If-None-Match-anmodninger og deres 304 Ikke-modificerede svar, så en fil forbliver cachelagret uden at kontrollere for opdateringer, indtil headeret Expires angiver nyt indhold er tilgængeligt!

det vigtige punkt der er "... indtil udløbsoverskriften indikerer ...", så den givne rådgivning er gyldig hvis du leverer et udløbsoverskrift i stedet.

Udløbsoverskrifter giver mere hastighedsforbedring, hvis du kan bruge dem, som når du bruger sidst modificerede overskrifter og Etags, selvom alle ressourcerne er cachelagret, skal browseren stadig sende anmodningerne til serveren, hvilket tager tid.

Googles hastighedsanbefalinger har en ret god skrivning.

arbejdet for dig: Charles Robertson | Ønsker du at kontakte os?