Assetic automatische cache-busting ohne Abfrage?
Konnte ich nicht finden viele Informationen auf dieser.
Möchte ich eine Zusammenstellung aller css (und js in der Tat) - Dateien in so etwas wie dieses:
css/all-c498dsfbc.css
Momentan bin ich nur in der Lage, diese zu ermitteln:
css/all.css
css/c498dsfbc.css
css/all.css?v=123
Der erste saugt, weil es kein cache-busting an alle.
Die zweite erzeugt einen hash, der verwendet werden könnte, für cache-busting, aber für einige Grund es nicht ändern, wenn ich etwas ändern in meinem .css-Dateien und führen Sie dann erneut diese:
$ php app/console assetic:dump --env=prod --no-debug
Die Dritte saugt auch, weil ich bin erforderlich, ändern Sie die version manuell, wie hier beschrieben: http://symfony.com/doc/current/reference/configuration/framework.html#ref-framework-assets-version. Auch denke ich nicht, dass mithilfe von Abfragen für diesen ist eine gute Idee (ich glaube, einige Browser oder CDN vielleicht nicht so). Es wäre viel besser, wenn der Dateiname geändert wurde: "all-c498dsfbc.css'. Dies ist, wie es ist getan in Schienen, wenn ich mich richtig erinnere.
Irgendwelche Gedanken?
BEARBEITEN
Scheinen, wie diese Funktion fehlt, ich kann es nicht glauben: https://github.com/kriswallsmith/assetic/pull/190
- Die zweite ändert sich nicht, b/c assetic verwendet den Dateinamen, anstatt den Inhalt zu generieren, es ist hash. Ich bin auf der Suche für die gleiche Sache, und es sieht aus wie es ist schon etwas bauen, in 1.1 - github.com/kriswallsmith/assetic/issues/116 . Ich werde versuchen, es zu erhalten arbeitend. Mit versionnumbers und aktualisieren Sie diese bei jeder änderung nervt 🙁
Du musst angemeldet sein, um einen Kommentar abzugeben.
In unser Projekt, um sicherzustellen, dass neue Inhalte nicht im Cache Lack für jede Implementierung, die wir manuell ändern version - und Vermögenswerte zu wählen, dass man. Ich denke, es ist eine gängige Praxis. Aber in unserem Fall - es speichert Sie in einem Ordner wie
web/version-1.2.3/css/all.css
.Unsere config für
framework
Abschnitt:Ich weiß, dies ist ein Alter thread, aber es ist an der Spitze von Google, so dass ich dachte, es lohnt sich das update:
Können Sie nun mit assetic mit der cache buster Arbeiter. Aber die 2.3.0 assetic bundle nicht über die config dafür so müssen Sie manuell aktivieren Sie es jetzt. Diese kann getan werden, wird die folgende service-definition:
Diese Arbeit ist aus der pull-request für die Konfiguration des cache-buster Arbeiter: https://github.com/symfony/AsseticBundle/pull/119/files