Seite 1 von 1

Script änderung frage zum Cache auf auto?

Verfasst: 14.04.2010, 15:07
von Dragonproject
Hallo Webkicker,
ich habe mal eine Frage da ich leider in der Sufu nichts finden konnte.
Immer wenn man an seiner Ankündigung ändert bzw. an der js Datei muss man ja immer den cache leeren damit es sichtbar wird was man neu gemacht hat.
Nun zu meiner frage..... gibt es eine möglichkeit via code im script was einzubauen was das ladem vom cache verhindert habe nur meta tags gefunden aber kann man ja schlecht im script einbauen und immer allen zu sagen sie sollen den cache mal leeren ist auch bissi doof oder meint ihr nicht auch.
Hoffe ihr könnt mir weiter helfen wie automatisch bei allen immer der cache geleert wird oder halt so das es nicht immer vom cache geladen wird

Re: Script änderung frage zum Cache auf auto?

Verfasst: 14.04.2010, 15:14
von Linus
Das geht, indem du beim einbinden der JS-Dateien in die Ankündigung eine Zahl anhängst. So wird aus:
Script:Zeigen
Script:Zeigen
<script src="http://deine-URL/scripts.js?143"></script>
Wenn du nun ein einem Script was änderst, wird es entweder sofort neu geladen oder es reicht, die Zahl zu ändern, da bin ich mir gra dleider selbst nicht sicher. Wenn du in deinen Scripts PHP benutzt (z.B. aufgrund der API), dann kannst du an den Anfang der Datei folgenden Code stellen:
Script:Zeigen
<?
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache");
header("Content-Type: text/javascript");
?>
Damit wirkt es auf den Browser wie JS, landet aber nicht im Cache. Hoffe das hilft :)

Re: Script änderung frage zum Cache auf auto?

Verfasst: 14.04.2010, 15:29
von Dragonproject
Füge ich nun das hier
Script:Zeigen
<?
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache");
header("Content-Type: text/javascript");
?>
einfach in die js datei ein?

Re: Script änderung frage zum Cache auf auto?

Verfasst: 14.04.2010, 15:46
von Linus
Nur wenn es sich um eine PHP-Datei handelt, sonst nicht.

Re: Script änderung frage zum Cache auf auto?

Verfasst: 23.04.2010, 12:39
von 1. FC Keller
einmaliges anhängen einer zahl bringt nichts. man muss sie nach jeder änderung an der datei ändern. wenn man regelmäßig etwas an der js-datei ändert kann man auch erzwingen dass die datei immer neu geladen wird... das kann bei vielen usern aber auch zu einem erhöhten traffic führen.

Code: Alles auswählen

<script type="text/javascript">document.write('<script src="http://deine-URL/scripts.js?'+Math.random()+'"><'+'/'+'script>');</script>
Wie gesagt sollte man das nicht aus Bequemlichkeit nutzen nur weil man 1mal im Jahr etwas ändert... wenn man aber z.B. selbst Scripts schreibt oder eine Datei regelmäßig ändern muss ist das schon deutlich einfacher/schneller als wenn man jedes mal die Ankündigung bearbeiten (andere Zahl hinter das Fragezeichen) oder den Cache löschen muss.