@Paul Creasey und @Salsa sind beide korrekt, dass Browser standardmäßig mit dem Caching umgehen, solange die Verbindung gleich ist.
Wie bereits erwähnt, führt dies zu einem Problem, wenn Sie diese Dateien aktualisieren müssen, da Sie nicht garantieren können, dass der Browser des Clients nach einer aktualisierten Version sucht. In vielen Fällen tun sie dies nur, nachdem eine bestimmte Zeit verstrichen ist, was zu einer unangenehmen Benutzererfahrung führen kann.
Es gibt eine Reihe von Fragen, die bereits auf dieser Site gestellt wurden, um zu erfahren, wie man die Client-Browser mit refresh the cache alarmiert. Kurz gesagt, alle verlassen sich darauf, den Link zu ändern, wenn Sie den Inhalt der Datei ändern.
Sie einen Parameter an die URL anhängen können, die nur für das Caching verwendet werden wie zum Beispiel:
<script src="/myJavascript.js?version=4"></script>
Dann ändern Sie einfach die Versionsnummer, wenn Sie den Inhalt ändern und eine Client-Seite refresh ala zwingen müssen this answer.
Die Dinge sind nicht wirklich so einfach. Caching ist wichtig, wenn Sie sich für eine fehlerfreie und gut funktionierende Website interessieren. Sie möchten vermeiden, dass Besucher Inhalte erneut herunterladen müssen, aber Sie möchten verhindern, dass Besucher veraltete Inhalte erhalten. In ASP.NET MVC verwende ich einen Ansatz, der einen MD5-Hash in der URL enthält, der dies ohne zu viele Gedanken nach der Einrichtung erreicht. Überprüfen Sie [meine Antwort hier] (http://stackoverflow.com/questions/936626/how-can-i-force-a-hard-refresh-ctrlf5/6439351#6439351) für den Quellcode. –
@Drew Sicher, das war nicht als Überblick über Caching gedacht. Erklären Sie dem Fragesteller, dass die Standardeinstellungen in Browsern und Servern nicht so schlecht sind, wenn Sie keine feinere Kontrolle benötigen. Apache ist normalerweise so konfiguriert, dass es ETags usw. bedient, und Browser gehen normalerweise mit 304s einher. Haben Sie Ihre Lösung überprüft, und das ist eine gute Idee! Ich werde diese Idee wahrscheinlich bald in Django verwenden. – JAL