GZIP Komprimierung arbeitet nicht

Hallo zusammen, ich habe aktuell leider das Problem, dass die GZIP Compression bei mir partou nicht arbeiten will. wenn ich http://www.vitaminb-shop.de/info.php mit http://http://checkgzipcompression.com/ prüfen lasse, wird sie komprimiert. Lasse ich aber http://www.vitaminb-shop.de/ prüfen, wird nichts komprimiert. Meine htaccess Datei sieht wie folgt aus: [code]SetEnv PHPRC /absoluter/pfad/zum/shop
RewriteEngine on

RewriteBase /

Https config for the backend

#RewriteCond %{HTTPS} !=on
#RewriteRule backend/(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteRule shopware.dll shopware.php
RewriteRule files/documents/.* engine [NC,L]
RewriteRule backend/media/(.*) media/$1 [NC,L]

RewriteCond %{REQUEST_URI} !(/(engine|files|templates)/)
RewriteCond %{REQUEST_URI} !(/media/(archive|banner|image|music|pdf|unknown|video)/)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ shopware.php [PT,L,QSA]

Fix missing authorization-header on fast_cgi installations

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

AddType text/css .css
AddType text/javascript .js
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp

      BrowserMatch ^Mozilla/4 gzip-only-text/html
      BrowserMatch ^Mozilla/4\.0[678] no-gzip
      BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent env=!dont-vary # Staging-Rules start #SetEnvIf Host "staging.test.shopware.in" ENV=staging DirectoryIndex index.html DirectoryIndex index.php DirectoryIndex shopware.php # Disables download of configuration Deny from all ExpiresActive on ExpiresDefault "access plus 1 month" FileETag None Header append Cache-Control "public" Header unset ETag # Disables auto directory index Options -Indexes Options -MultiViews # php_value memory_limit 128M # php_value max_execution_time 120 # php_value upload_max_filesize 20M php_flag phar.readonly off php_flag magic_quotes_gpc off php_flag session.auto_start off php_flag suhosin.session.cryptua off php_flag zend.ze1_compatibility_mode off # AddType x-mapp-php5 .php # AddHandler x-mapp-php5 .php[/code] Kann mir da wer helfen ? Habe schon zeilenweise die einzelnen Rewrite Regeln auskommentiert / gelöscht, aber keine Chance, die Komprimierung ans Laufen zu bekommen. [url=http://www.vitaminb-shop.de/backend/]http://www.vitaminb-shop.de/backend/[/url] wird komischerweise wieder komprimiert. Vielen Dank an Euch alle :)

Hat niemand eine Idee ? ;(

Dein PHP wird über den in PHP “eingebauten” gzhandler komprimiert, also komprimiert hier nicht der Webserver, sondern PHP selbst und ändert den http Header entsprechend. Im Apache ist das gzip-Modul (mod_deflate) entweder gar nicht installiert oder nicht aktiviert. Die Regeln in der .htaccess fragen die Existenz des geladenen Moduls in der Klammer ab und führen die Direktiven nur aus, wenn das Modul da ist:

über a2enmod deflate läßt sich das Modul im Apache aktivieren, falls vorhanden.

Hallo, ich habe ein ähnliches Problem. Ich nutze den RC2 von Shopware 5. Mein Hoster (Domainfactory) ist nicht in der Lage, mir einen PHP-FCGI Version zur Verfügung zu stellen, bei der das mod_deflate Module funktioniert. Alternativ habe ich von denen den Tipp bekommen, die zlib.output_compression anzustellen und mit ob_start(“ob_gzhandler”) zu arbeiten. Laut infophp() läuft das auch: HTTP_ACCEPT_ENCODING passt, zlib.output_compression=On, zlib.output_compression_level = 4 Ich habe folgenden Code an den Anfang der shopware.php geschrieben: if (substr_count($_SERVER[‘HTTP_ACCEPT_ENCODING’], ‘gzip’)) { ob_start(“ob_gzhandler”); } else { ob_start(); } Und an das Ende: ob_end_flush (); Leider ohne Ergebnis! Hat jemand eine Idee, wie ich meinen Output Google-Freundlich komprimiert bekomme? Vielen Dank! :slight_smile:

Was ich ja nicht verstehe, dass wohl das Backend komprimiert wird, aber das Frontend nicht. Schaut mal: http://checkgzipcompression.com/?url=ht … %2Fbackend Frontend: http://checkgzipcompression.com/?url=ht … nb-shop.de Im Backend habe ich die "Warten auf " Meldungen nicht, da rennt es wie Hölle. Jemand noch ne Idee, wie ich das Frontend ebenfalls komprimiert bekomme ? Ich habe testweise mal auf einen Managed Dedictaed von Hetzner umgezogen, meine htaccess: [code]
RewriteEngine on

RewriteBase /

Https config for the backend

#RewriteCond %{HTTPS} !=on
#RewriteRule backend/(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteRule shopware.dll shopware.php
RewriteRule files/documents/.* engine [NC,L]
RewriteRule backend/media/(.*) media/$1 [NC,L]

RewriteCond %{REQUEST_URI} !(/(engine|files|templates)/)
RewriteCond %{REQUEST_URI} !(/media/(archive|banner|image|music|pdf|unknown|video)/)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ shopware.php [PT,L,QSA]

Fix missing authorization-header on fast_cgi installations

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]



# gzip Compression if availiable
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl) mod_gzip_item_include handler ^cgi-script
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.gzip.

AddType text/css .css
AddType text/javascript .js
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp

      BrowserMatch ^Mozilla/4 gzip-only-text/html
      BrowserMatch ^Mozilla/4\.0[678] no-gzip
      BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent env=!dont-vary # Staging-Rules start #SetEnvIf Host "staging.test.shopware.in" ENV=staging DirectoryIndex index.html DirectoryIndex index.php DirectoryIndex shopware.php # Disables download of configuration Deny from all ExpiresActive on ExpiresDefault "access plus 1 month" FileETag None Header append Cache-Control "public" Header unset ETag # Disables auto directory index Options -Indexes Options -MultiViews # php_value memory_limit 128M # php_value max_execution_time 120 # php_value upload_max_filesize 20M php_flag phar.readonly off php_flag magic_quotes_gpc off php_flag session.auto_start off php_flag suhosin.session.cryptua off php_flag zend.ze1_compatibility_mode off # AddType x-mapp-php5 .php # AddHandler x-mapp-php5 .php[/code] Danke nochmal.

mod_deflate ist auch ganz sicher aktiviert? Unter Debian geht das wie folgt: a2enmod deflate /etc/init.d/apache2 restart (s. https://www.howtoforge.com/apache2_mod_deflate )

Ja, wie gesagt, im Backend wird ja komprimiert.

Wie tschersich schon gesagt hat, kann es sein, daß PHP und nicht der Webserver die Komprimierung in Teilen des Shops vornimmt: [quote]Dein PHP wird über den in PHP „eingebauten“ gzhandler komprimiert, also komprimiert hier nicht der Webserver, sondern PHP selbst und ändert den http Header entsprechend.[/quote] Daher solltest Du unbedingt prüfen, ob mod_deflate aktiv ist.

Lauft Antwort des Hosters und auch nach Prüfung der aktiven Plugins sollte deflate laufen. Merkwürdig ist auch, dass, wenn ich einen Shop “nackt” installiere, dieser rasend schnell ist, auch bei wenig Artikeln, der “Hauptshop”, um den es im Endeffekt geht, aber tlw. bis zu 7-8 Sekunden Wartezeit aufweist.

Die letzte ANtwort des Hosters: ““Das Modul ist standardmässig auf unseren Servern installiert und Sie können über htaccess nut statische Inhalte komprimieren. Wenn Sie dynamische Inhalte wie php-Dateien komprimieren möchten, müssen Sie das in den Skripten selbst tun.”” Leider ist mir nicht bekannt, wie ich das in Shopware realisieren kann.