Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Evitare di memorizzare la pagina nella cache

    Ho un sito in cui ogni volta che faccio degli aggiornamenti generali, il browser mi visualizza la pagina com'era prima della modifica e ogni volta devo essere io ad aggiornare manualmente la pagina o vuotare la cache del browser.

    Ho letto questa pagina di Google dove parla come evitare questo problema.
    https://support.google.com/dfp_premi.../1116933?hl=it
    Volevo sapere se secondo voi conviene adottare questa soluzione oppure se ne esistono altre e meno restrittive. Nel senso che scarica solo quello che è stato aggiornato recentemente, invece di caricare alla cieca il sito, partendo prima dalla cache.

    E se possibile, mi spiegate come funziona questo tag ord? Non ho capito come lo usa in quella pagina.

  2. #2
    Scusami, ma non è tanto chiaro che cosa aggiorni e che cosa vorresti che accadesse.

    Per farti un esempio, se si tratta di aggiornare le pagine HTML del sito, allora probabilmente queste le produrrai con un linguaggio lato server, con il quale potrai inviare gli header HTTP che servono a controllare la cache, per esempio in php:

    header("Expires: Mon, 01 Jan 1900 00:00:00 GMT"); // Date in the past
    header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // always modified
    header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
    header("Pragma: no-cache"); // HTTP/1.0

    Se invece quel che aggiorni sono file binari (immagini e altro) che carichi direttamente sul sito, allora dovrebbe essere apache o IIS (il server web) a occuparsi di fare notare al tuo browser cosa è cambiato e cosa no.

    L'dea che viene descritta nella pagina che indichi è un'idea che funziona, ma che io trovo un po' contorta, per due ragioni:

    1) Si basa su javascript, che potrebbe non essere attivo e che è assurdo usare per risolvere un problema che è lato server
    2) Si basa sull'ingannare il browser, facendogli credere che si sta richiedendo una pagina diversa solo perchè si inserisce un parametro random sulla url .

    Facci capire meglio cosa vorresti ottenere!
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  3. #3
    Mi riferivo a pagine html e immagini. Sia quando aggiungo un testo, che quando aggiungo il link di un'immagine. Quindi immagino faccia parte solo alla prima soluzione...
    Io ho un sito scritto in XHTML; quei codici in php non li ho mai messi sulle pagine

  4. #4
    Quote Originariamente inviata da Shikamaru93 Visualizza il messaggio
    Mi riferivo a pagine html e immagini. Sia quando aggiungo un testo, che quando aggiungo il link di un'immagine. Quindi immagino faccia parte solo alla prima soluzione...
    Io ho un sito scritto in XHTML; quei codici in php non li ho mai messi sulle pagine
    Se le tue pagine sono statiche, ovvero le modifichi solo sul tuo pc e poi le carichi via ftp, allora dovrebbe essere il server web ad occuparsi di avvisare il browser che sono state modificate, proprio come per i file binari. Se non vado errato anche in XHTML esistono i meta tag http-equiv, nei quali dovresti poter usare gli header che ti ho segnalato:

    <meta http-equiv="Expires" content="Mon, 01 Jan 1900 00:00:00 GMT">

    Puoi installare in Firefox l'estensione Firebug per poter vedere tramite il pannello Net, quali sono gli header http che vengono scambiati, così da vedere se il server web sta invianod quelli giusti.
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  5. #5
    Si le carico da ftp. Con quel meta dice quand'è stata l'ultima modifica e il browser legge o meno la cache in base all'ultima visita?

  6. #6
    Expires: indica la data a cui il contenuto scade, in pratic dice al browser che se sta tentando di caricare la pagina dalla cache dopo la data indicata in expires, deve saltare la chache e andare a riscaricarla dal sito

    Last-Modified: indica la data e ora dell'ultima modifica alla pagina, altrettanto è una informazione che permette al browser di decidere se usare la cache on no

    Cache-Control: no-cache, must-revalidate
    Pragma: no-cache

    indicano al browser che la pagina non deve MAI essere letta dalla cache, in NESSUN caso, ma dev'essere sempre richiesta nuovamente al server, quindi vanno usati con più parsimonia.
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  7. #7
    Ottimo. Grazie mille!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.