2009-09-23 11 views
5

sto usando la barra degli strumenti WebDevHelper per Internet Explorer per risolvere le richieste HTTP/andata e ritorno sul mio SSL sito e ho notato che IE re-download il mio CSS: hover immagini ogni volta che sono innescato. Ciò causa una grande quantità di viaggi di andata e ritorno.IE7 non Caching CSS immagine su SSL

Come posso evitare che ciò accada?

Edit: Tutto il contenuto statico viene servito con cache-control: public, così le immagini, JavaScript, ecc vengono memorizzate nella cache di Firefox e Chrome. Questo problema è specifico per IE.

+0

Sei certo che questo succede solo su SSL e non si verifica più di non- Pagine SSL? –

risposta

0

Il contenuto servito tramite SSL non verrà memorizzato nella cache per motivi di sicurezza. Se vuoi che qualcosa venga memorizzato nella cache, servilo via HTTP.

+3

Questo non è vero come una dichiarazione generale. Firefox memorizza correttamente nella cache (ho il controllo della cache: pubblico su tutto il contenuto statico), quindi Chrome e Safari. – Alex

+3

non server risorse http su una pagina https. Otterrai brutti errori che faranno impazzire gli utenti. –

+4

Impossibile servire HTTP con HTTPS senza ottenere molti errori sullo schermo. –

0

Hai provato ad aggiungere all'intestazione per quel tipo di file statici.

P3P: CP="CAO PSA OUR" 

So che questo funziona con IE per consentire la memorizzazione di cookie attraverso frameset e roba. Non sono sicuro che funzioni con file statici in HTTPS.

+0

Provato, ricevendo ancora richieste per tutte le immagini. Che è davvero brutto se si ha una combinazione di 3 immagini (off/on/hover). – Alex

2

Serve contenuto statico tramite http, sicuro, ma non fare immagini separate per: stati di hover. Dovrebbero essere utilizzati sprite di immagine css corretti. È solo una buona pratica in tutto, tramite https o http. Ci sono tonnellate di risorse disponibili per creare sprite. Presumibilmente SpriteMe, [http://spriteme.org/] è un tentativo di automatizzare la creazione di sprite di immagini css.

+1

Non posso pubblicare contenuto statico tramite http in un ambiente https. Questo crea il brutto avvertimento 'contenuto insicuro'. – Alex

+0

Direi che la soluzione migliore è creare degli sprite css! Ridurrai anche le richieste http su tutti i browser. – jasonevers

1

Bene ci sono più problemi in base ad altri post Stackoverflow. FireFox 2.x ha anche questo problema. Ma FireFox 3.x no.

Will web browsers cache content over https

anche in Internet Explorer, si va a Strumenti> Opzioni Internet> scheda Avanzate> sezione Protezione> Non salvare pagine crittografate su disco. Sembra essere deselezionato per impostazione predefinita in IE6, 7 e 8.

0

So che sembra strano ... provare a mettere un URL a qualcosa che non esiste (errore 404). dopo questo, tutto il resto delle immagini verrà memorizzato nella cache.