2012-03-09 12 views
29

Ho un blog basato su bootstrap di Jekyll ospitato su pagine Github.Blog basato su Jekyll Bootstrap - Scade le intestazioni?

Il mio problema è: ogni volta che cambio qualcosa sulla mia pagina web, devo ricaricare forzatamente la pagina (CTRL + R) per vedere le modifiche.

Jekyll o il mio browser non sembrano rendersi conto che è disponibile una versione più recente da inviare.

Come posso configurare Jekyll per gestire meglio questo?

+2

Le probabilità sono che Github Pages invii intestazioni di cache aggressive, dicendo al browser di non controllare una versione aggiornata della risorsa fino a un certo momento. – Charles

+0

Quindi non c'è la possibilità di aggirare questo problema con Github Pages? –

+0

Avrai bisogno di chiedere loro le loro pratiche di memorizzazione nella cache. – Charles

risposta

-1

Se si desidera ignorare la cache sulle risorse statiche, è possibile modificare il nome del file ogni volta che viene premuto. Questo farà sì che il browser ottenga la nuova risorsa poiché non saprà nulla di un file con un nuovo nome.

Ad esempio:

Vecchio nome del file: project.css nuovo nome del file: projectv01.css

o quello che volete.

+1

Anche la pagina di riferimento dovrebbe essere rinominata, il che interromperebbe completamente l'esperienza dell'utente. Invece di index.html dovrebbe essere index01.html :). Altrimenti la cache servirà l'index.html che punta a project.css piuttosto che a projectv01.css. Usando javascript per aggiungere? Cache = random ad ogni URL contenuto è una soluzione .. ma una soluzione orribile pessima. – whardier

5

Ci sono un paio di jekyl plugin per gestire il busting della cache delle risorse.

https://github.com/ixti/jekyll-assets/

http://matthodan.com/2012/11/22/jekyll-asset-pipeline.html

ho cercato Jekyll-attivi ed è abbastanza bello come gestire tutti i tipi di attività con un numero di versione MD5.

Prima di utilizzare per aggiungere una stringa ai miei collegamenti css al momento della compilazione.

<link href="{{ ASSET_PATH }}/css/global.css?{{ site.time | date:'%Y%m%d%U%H%N%S' }}" rel="stylesheet"> 
+0

La domanda non riguarda le risorse, si tratta della cache html. –

+0

sì ma questo plugin aggiunge stringhe di busting della cache, ecco perché ho risposto qui. colpa mia :) –

3

È possibile aggiungere questi metatag al proprio html per disabilitare il caching del browser per le proprie pagine.

<meta http-equiv="Pragma" content="no-cache" /> 
<meta http-equiv="Expires" content="-1" /> 
Problemi correlati