Komprimieren von JS und CSS in statischen HTML-Dateien

9

Die Ausgabe von Sphinx , dem Python-Dokumentationsgenerator, führt zu einer großen Anzahl von HTML-Dateien. Jeder hat einen Header mit einer großen Anzahl von JavaScript und CSS beinhaltet:

%Vor%

Die meisten davon werden einzeln minimiert, aber dies ist immer noch suboptimal, da es separate Anforderungen an den Webserver erfordert, wenn der Cache des Clients leer ist. Gibt es ein Tool wie YUI Compressor oder den Closure Compiler, die HTML-Dateien als Eingabe nehmen, alle einzelnen extern verknüpften Skripte komprimieren und dann die Ausgabe neu schreiben? Dies wäre ähnlich wie django_compressor .

    
jterrace 06.09.2012, 14:35
quelle

3 Antworten

2

Stimmen Sie der obigen Antwort zu.

Sie können noch etwas anderes tun.

Setzen Sie alle Skripte nach Body anstelle von Header. Möglicherweise wird es Ihre Ladegeschwindigkeit erhöhen.

    
Hemal Monani 17.09.2012 07:13
quelle
1

Ihr könnt Springboard ausprobieren. Ich denke, es wird gut für Ihre Bedürfnisse geeignet sein.

    
Simo Endre 17.09.2012 07:26
quelle
0

Es gibt zwei Komponenten, nach denen Sie fragen - eine, die Ihre Ressourcen kombiniert und minimiert, und eine andere, die die statischen HTML-Dateien neu schreibt, um die minimierten Ressourcen zu verwenden.

Für die erste Komponente könnten Sie meiner Meinung nach diese Minify-Engine verwenden ; Es wurde entwickelt, um Seiten dynamisch zu bedienen, aber Sie können entweder herausfinden, wie Sie direkt in den Code einhaken oder die Ausgabe in statische Dateien speichern (die URL ermöglicht Ihnen, mehrere Dateien anzugeben).

Für das zweite Element sollte es nicht zu schwierig sein, die Seite als XML zu analysieren (vorausgesetzt, es ist valides XHTML) und alle <link> oder <script> -Tags zu finden, eine Kopie des Dokuments ohne diese Elemente zu speichern, kompilieren Sie die Minimierte Ressourcen und fügen sie hinzu, sobald der Knoten <head> geschlossen wird, den Rest der Datei liest und das erstellte XHTML-Dokument speichert. Wenn dies zu viel ist, können Sie möglicherweise auch einen regulären Ausdruck verwenden, um <link> und <script> tags zu suchen und zu ersetzen. Normalerweise können reguläre Ausdrücke XML nicht perfekt parsen, aber diese Tags sollten OK sein, weil sie nicht verschachtelt sind.

Wenn Sie das zusammenstellen wollen, was ich beschrieben habe, aber weitere Hilfe benötigen, fragen Sie einfach.

    
meustrus 06.09.2012 17:44
quelle