Thanh Trung
Thanh Trung

Reputation: 3804

PHP disable zlib.output_compression

My site has zlib.output_compression set to On in the ini file, it will compress all response when sending to the browser.

How to disable the compression only for binary file, PDF file and excel file so it will output to the browser correctly when download a file ?

Upvotes: 5

Views: 21336

Answers (2)

Sebastien Horin
Sebastien Horin

Reputation: 11067

Use a .conf file in your server, restricting compression to the right MIME types

for example in /etc/httpd/conf.d/enable_mod_deflate.conf:

# mod_deflate configuration
<IfModule mod_deflate.c>
  # Restrict compression to these MIME types
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE text/xml
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE application/xml+rss
  AddOutputFilterByType DEFLATE application/x-javascript
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE image/png
  AddOutputFilterByType DEFLATE image/gif
  AddOutputFilterByType DEFLATE image/jpeg

  # Level of compression (Highest 9 - Lowest 1)
  DeflateCompressionLevel 9

  # Netscape 4.x has some problems.
  BrowserMatch ^Mozilla/4 gzip-only-text/html

  # Netscape 4.06-4.08 have some more problems
  BrowserMatch ^Mozilla/4\.0[678] no-gzip

  # MSIE masquerades as Netscape, but it is fine
  BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

  <IfModule mod_headers.c>
    # Make sure proxies don't deliver the wrong content
    Header append Vary User-Agent env=!dont-vary
  </IfModule>
</IfModule>

don't forget to restart your servers

sudo service httpd restart

Upvotes: 4

prava
prava

Reputation: 3986

zlib.output_compression = on/off

and in PHP

ini_set("zlib.output_compression", "On");
ini_set("zlib.output_compression", "Off");

Check this one for more details - http://php.net/manual/en/zlib.configuration.php#ini.zlib.output-compression

Upvotes: 5

Related Questions