2009-08-05 6 views
21

Ich habe versucht, ohne Erfolg, eine HTML-Seite zu bekommen eine externe GZIP komprimierte JavaScript-Datei aus dem lokalen Dateisystem unter Verwendung einer HTML-Datei wie diese zu laden:Ist es möglich, gzip komprimiertes Javascript ohne einen Webserver zu laden?

<html> 
<head> 
<script src="test.js.gz" type="text/javascript"></script> 
</head> 
<body></body> 
</html> 

Wenn ich diese HTML-Datei in einem direkt öffnen Browser wird die Javascript-Datei nicht dekomprimiert, sondern nur wie sie ist Da es keinen Webserver gibt, der dem Browser mitteilt, dass die Daten komprimiert sind, habe ich mich gefragt, ob irgendjemand etwas anderes wissen könnte, wie ein solches Setup funktioniert? (Das Endergebnis wird nicht von einem Webserver ausgeführt).

Antwort

21

GZIP (de) Komprimierung von Dateien ist Teil des HTTP/1.1-Protokolls, das von Browsern zum Laden lokaler Dateien nicht verwendet wird. Also ich denke die kurze Antwort ist nein. Es tut uns leid!

Sie können auf unkomprimierte Dateien zurückgreifen oder sie vor dem Laden der Webseite dekomprimieren oder einen HTTP-Daemon (Webserver) auf dem lokalen Computer ausführen, der Dateien an den Webbrowser sendet.

Hoffe, dass hilft

+0

Irgendein Browser-Plugin, das damit umgehen kann. Es wäre praktisch, gzipierte Dateien lokal zu testen, ohne dass ein Webserver installiert ist ... –

4

Nein, gibt es nicht.

Ich gehe davon aus, dass Sie dies zum Testen tun - in diesem Fall, keine Sorge. Ein richtig konfigurierter Webserver gzipiert Dateien im laufenden Betrieb (und speichert sie zwischen). Sie müssen nicht auf eine .js.gz-Version verlinken.

+1

Das bedeutet, dass ich die Skript-Tags, die sich auf main.js beziehen, nicht auf main.js.gz ändern muss –

1

Wie AI darauf hingewiesen, gzip dekomprimieren Feature ist nicht für Webbrowser. Sie können jedoch Web-Server konfigurieren, um die statischen Dateien für die Übertragung zu komprimieren. Die Webbrowser dekomprimieren die Dateien transparent und dienen dem Zweck der Speicherbandbreite. Hier

ist ein Hinweis dafür, wie Sie dies in Apache: http://betterexplained.com/articles/how-to-optimize-your-site-with-gzip-compression/ Wenn Sie auf anderen Web-Server sind, können Sie es Google angezeigt.

Verwandte Themen