Amazon Cloudfront Cache-Control: No-Cache-Header hat nach 24 Stunden keine Wirkung

Ich bin hosting einer statischen website in S3 und mit Cloudfront cache-Dateien. Ich habe im wesentlichen habe 3 Dateien mit folgenden überschriften:

  • index.html (Cache-Control: no-cache)
  • app.js (Cache-Control: max-age=63072000, öffentlichkeit)
  • Stil.css ("Cache-Control: max-age=63072000, öffentlichkeit)

Meine html-Datei verwendet den query-string-Parameter, die aktualisiert wird jedes mal, wenn ich update meine css-oder js-Dateien. Ich habe s3 konfiguriert, übergeben Sie diese Parameter durch und ich habe festgestellt, dass es funktioniert, um invalidate-Cache-Ressourcen. Meine index.html die Datei sieht ungefähr so aus:

<html>
    <head>
        ...
        <link  href="app.css?v=14113e2c764">
    </head>
    <body>
        ...
        <script src="app.js?v=14113e2c764"></script>
    </body>
</html>

Scheint es gut zu funktionieren, wie ich push-updates den ganzen Tag, aber wenn ich komme, am nächsten morgen auf und Schiebe meine nächste änderung, Die index.html die Datei ist veraltet. Anstatt die richtige ?v= parameter, es ist der alte! Die einzige Möglichkeit, es zu beheben ist, erlöschen die html-Datei manuell. Dann funktioniert alles für den rest des Tages. Am nächsten Tag habe ich das gleiche problem wieder.

Was ist denn hier Los?

InformationsquelleAutor der Frage Adam | 2013-09-12

Schreibe einen Kommentar