• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Dateien komprimieren bzw. direkt ZIP senden

mike2033

Neues Mitglied
Hallo,

wie man nur HTML Dateien etc. komprimiert um an Bandbreite zu sparen weiß ich bereits - von hier: How To Optimize Your Site With GZIP Compression | BetterExplained

Besonders interessant fand ich folgendes:
If we could send a .zip file to the browser (index.html.zip) instead of plain old index.html, we'd save on bandwidth and download time. The browser could download the zipped file, extract it, and then show it to user, who's in a good mood because the page loaded quickly.

Wenn ich das richtig verstanden habe, ist es möglich den gesamten htdocs Ordner zu zippen und somit muss man auch nichtmal mehr CPU in anspruch nehmen weil die Datei immer als ZIP bzw. bereits komprimiert vorhanden ist. Nun die Fragen:

1. Wie mache ich das bzw. konfiguriere den Server so (benutze XAMPP) damit er die ZIP sendet und der Browser diese dann entpackt anstatt immer wieder einzelne HTML (etc.) Dateien einzelt zu komprimieren?
2. Kann ich die Dateien einfach mit z.B. 7 ZIP als ZIP komprimieren?
3. Wenn der Server NUR die ZIP anbietet haben ältere Browser evtl. Probleme da sie sowas nicht unterstützen. Ist es möglich für Browser die Compression unterstützen die ZIP zu senden und denen die keine Komprimierung unterstützung die normale index? So dass eben jeder Browser mit der Website arbeiten kann

Vielen Dank schonmals
 
Dir geht es um die Komprimierung der vom Server ausgelieferten Daten. Bevor Du da irgendetwas unternimmst, solltest Du prüfen, ob dies nicht bereits der Fall ist. Bei Apache-Webservern ist das durch das Apache-Modul mod_deflate oft bereits aktiviert.

Prüfen kannst Du das z.B. mit Firebug indem Du dir den Response-Header eines Seitenaufrufs anschaust. Wenn dort etwas von "gzip" oder "deflate" oder beides vorkommt, dann werden die Daten bereits gepackt an den Browser ausgeliefert.

Wenn Du das nicht siehst, dann solltest Du zuerst versuchen mod_deflate zu aktivieren. Oft kann man das mit folgendem Eintrag in einer .htaccess-Datei erreichen:

Code:
<IfModule mod_deflate.c>
<FilesMatch “\\.(js|css|html|xml)$”>
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>

Nur wenn Du bei deinem Webserver keinen Zugriff auf diese Module bzw. deren Einstellungen hast, würde sich die Verwendung von PHP dafür lohnen. Dazu reicht folgender Eintrag:

PHP:
<?php
ob_start(“ob_gzhandler”);
?>

Siehe auch:
Gzip Komprimierung aktivieren | Möglichkeiten und Ressourcen | NetBranding
 
Zurück
Oben