Title: Compression problem
Last modified: August 24, 2016

---

# Compression problem

 *  Resolved [carbeck](https://wordpress.org/support/users/carbeck/)
 * (@carbeck)
 * [11 years ago](https://wordpress.org/support/topic/compression-problem/)
 * If I enable compression in Hyper Cache, .gz files are created in the cache as
   you’d expect and these cached files are served fine by my server, since I set
   it up to send .gz files instead of plain ones whenever they’re available.
 * However, if I load a page with caching disabled (e.g. with Ctrl-Shift-R in Chromium),
   I receive gibberish, since my webhost configured Apache to always send dynamically
   generated content with on-the-fly gzip compression by default, so it seems that
   if compression is enabled in Hyper Cache, dynamic content that WordPress sends
   is compressed twice, once by the plugin and once by the server.
 * This unfortunately leads to problems if you’re logged in as admin, since Hyper
   Cache prevents the server from serving cached files then. The admin only gets
   to see gibberish in that case, except on the admin pages themselves, since Hyper
   Cache seems to always force PHP to gzip-encode content when compression is enabled
   in the plugin’s settings.
 * Is there a way in Hyper Cache to create gzipped caches of files but to still 
   not send on-the-fly gzipped pages when not loading from cache because the server
   already compresses dynamically generated HTML content? Mod_deflate and mod_gzip
   are unfortunately not available on my server.
 * For what it’s worth, my host is nearlyfreespeech.net.
 * [https://wordpress.org/plugins/hyper-cache/](https://wordpress.org/plugins/hyper-cache/)

Viewing 8 replies - 1 through 8 (of 8 total)

 *  Plugin Author [Stefano Lissa](https://wordpress.org/support/users/satollo/)
 * (@satollo)
 * [11 years ago](https://wordpress.org/support/topic/compression-problem/#post-6031729)
 * Or you enable the mime type text/html compression on your apache (and disable
   it on hyper cache) or you disable it on apache and enable on hyper cache.
 * Apache can be configured to compress only specific mime types (js, css and so
   on).
 * Probably you configured it to deflate every kind of content.
 *  Thread Starter [carbeck](https://wordpress.org/support/users/carbeck/)
 * (@carbeck)
 * [11 years ago](https://wordpress.org/support/topic/compression-problem/#post-6031732)
 * I didn’t configure anything, that’s the point. As I said, mod_deflate isn’t available
   without paying extra, as far as I can tell. I’ll have a look into it again, though.
 * EDIT: According to my host’s help forum, mod_deflate isn’t available, period,
   so it seems that I can’t tell Apache to compress text/html or to make an exception
   for it.
 * EDIT EDIT: So basically, the way it is, the only thing that works in my case 
   if I want compressed cache files is to make a script that runs like once a day
   or so and zips the .html files in the cache folder, since my host refuses to 
   provide mod_deflate and asks to either use PHP’s own gz_* functions or to manually
   gzip static content if you want it to be compressed.
 *  Plugin Author [Stefano Lissa](https://wordpress.org/support/users/satollo/)
 * (@satollo)
 * [11 years ago](https://wordpress.org/support/topic/compression-problem/#post-6031828)
 * Sorry, I didn’t read the first message with the required attention. When a compressed
   file is sent, a special header is needed so the browser knows it must decompress
   it. So if you compress a static resource you should not only change the references
   to it but even force such special header (usually it can be done with a specific.
   htaccess configuration.
 * Hyper Cache adds the header for compressed pages, maybe the provider is removing
   it?
 * The header is “content-encoding”, you can ask the provider if they have policies
   about this header.
 *  Thread Starter [carbeck](https://wordpress.org/support/users/carbeck/)
 * (@carbeck)
 * [11 years ago](https://wordpress.org/support/topic/compression-problem/#post-6031925)
 * OK, I don’t know if this helps to troubleshoot the issue, but here’s the headers
   I receive:
 * **Without compression:**
 * _Normal contents, from cache:_
 *     ```
       Connection:keep-alive
       Date:Mon, 20 Apr 2015 16:53:27 GMT
       Server:Apache
       Vary:Accept-Encoding
       Via:1.1 edge4.phxe.nearlyfreespeech.net (squid)
       ```
   
 * _Normal contents, dynamically generated:_
 *     ```
       Connection:keep-alive
       Content-Encoding:gzip
       Content-Type:text/html; charset=UTF-8
       Date:Mon, 20 Apr 2015 16:53:55 GMT
       Link:<http://[my website]/>; rel=shortlink
       Server:Apache
       Transfer-Encoding:chunked
       Vary:Accept-Encoding
       Via:1.1 edge4.phxe.nearlyfreespeech.net (squid)
       X-Hyper-Cache:stop - no cache header
       X-Pingback:http://[my website]/xmlrpc.php
       ```
   
 * **With compression enabled:**
 * _Normal contents, from cache:_
 *     ```
       Cache-Control:private, max-age=0, no-cache, no-transform
       Connection:keep-alive
       Content-Encoding:gzip
       Content-Length:5331
       Content-Type:text/html;charset=UTF-8
       Date:Mon, 20 Apr 2015 16:51:49 GMT
       Last-Modified:Mon, 20 Apr 2015 16:50:33 GMT
       Server:Apache
       Vary:Accept-Encoding
       Via:1.1 vhost.phx3.nearlyfreespeech.net (squid)
       X-Hyper-Cache:hit - gzip
       ```
   
 * _Gibberish, dynamically generated:_
 *     ```
       Cache-Control:private, max-age=0, no-cache, no-transform
       Connection:keep-alive
       Content-Encoding:gzip
       Content-Type:text/html; charset=UTF-8
       Date:Mon, 20 Apr 2015 16:51:12 GMT
       Link:<http://[my website]/>; rel=shortlink
       Server:Apache
       Transfer-Encoding:chunked
       Vary:Accept-Encoding,User-Agent
       Via:1.1 edge4.phxe.nearlyfreespeech.net (squid)
       X-Hyper-Cache:stop - no cache header, gzip on the fly
       X-Pingback:http://[my website]/xmlrpc.php
       ```
   
 * There’s also this in my .htaccess at the website root, though even commenting
   it out doesn’t fix the issue:
 *     ```
       <IfModule mod_rewrite.c>
       RewriteEngine on
       RewriteCond %{HTTP:Accept-Encoding} gzip
       RewriteCond %{REQUEST_FILENAME}.gz -f
       RewriteRule ^(.*)$ $1.gz [L]
       </IfModule>
       ```
   
 *  Plugin Author [Stefano Lissa](https://wordpress.org/support/users/satollo/)
 * (@satollo)
 * [11 years ago](https://wordpress.org/support/topic/compression-problem/#post-6031936)
 * It seems the problem is when hyper cache compress on the fly the content
 * X-Hyper-Cache:stop – no cache header, gzip on the fly
 * Actually I don’t know why… I should add an option to avoid on the fly compression(
   maybe it’s already there).
 * Rather strange probably is due to the “content-length” missing since the transfer
   is chunked.
 *  Thread Starter [carbeck](https://wordpress.org/support/users/carbeck/)
 * (@carbeck)
 * [11 years ago](https://wordpress.org/support/topic/compression-problem/#post-6031951)
 * Yeah, it looks like this is when things are basically gzipped twice. I’d greatly
   appreciate it if you could build in such an option, as you suggested. Thanks 
   a lot for your support!
 *  Thread Starter [carbeck](https://wordpress.org/support/users/carbeck/)
 * (@carbeck)
 * [11 years ago](https://wordpress.org/support/topic/compression-problem/#post-6032065)
 * Thank you again for your assistance, Stefano! Since updating the plugin today,
   compression seems to work correctly 🙂
 *  Plugin Author [Stefano Lissa](https://wordpress.org/support/users/satollo/)
 * (@satollo)
 * [11 years ago](https://wordpress.org/support/topic/compression-problem/#post-6032066)
 * Great! I removed the on the fly compression and added an option to enable it.

Viewing 8 replies - 1 through 8 (of 8 total)

The topic ‘Compression problem’ is closed to new replies.

 * ![](https://ps.w.org/hyper-cache/assets/icon-256x256.png?rev=3452725)
 * [Hyper Cache](https://wordpress.org/plugins/hyper-cache/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/hyper-cache/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/hyper-cache/)
 * [Active Topics](https://wordpress.org/support/plugin/hyper-cache/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/hyper-cache/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/hyper-cache/reviews/)

## Tags

 * [caching](https://wordpress.org/support/topic-tag/caching/)
 * [compression](https://wordpress.org/support/topic-tag/compression/)
 * [gzip](https://wordpress.org/support/topic-tag/gzip/)
 * [nearlyfreespeech.net](https://wordpress.org/support/topic-tag/nearlyfreespeech-net/)

 * 8 replies
 * 2 participants
 * Last reply from: [Stefano Lissa](https://wordpress.org/support/users/satollo/)
 * Last activity: [11 years ago](https://wordpress.org/support/topic/compression-problem/#post-6032066)
 * Status: resolved