如何确保我的内容通过Apache中的gzip发送?


10

是否可以在Apache配置中搜索某些设置,以确保所有页面,CSS和JavaScript均通过gzip发送?

它们是否位于不同操作系统的不同位置(如果是,我正在运行Debian)。


2
这当然不是题外话。

Answers:


3

我将以下内容放入我的httpd.conf中,它似乎可以工作:

  # 20100709 added etag code
  FileETag MTime Size

  # 20100709 added compression START

  # Insert filter
  SetOutputFilter DEFLATE

  # 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 \bMSIE !no-gzip !gzip-only-text/html

  # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
  # the above regex won't work. You can use the following
  # workaround to get the desired effect:
  BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

  # Don't compress images
  SetEnvIfNoCase Request_URI \
  \.(?:gif|jpe?g|png)$ no-gzip dont-vary

  # Make sure proxies don't deliver the wrong content
  Header append Vary User-Agent env=!dont-vary

  # 20100709 added compression END

该网站具有出色的测试器,可以查看您的网页是否为GZIP:http//www.whatsmyip.org/http_compression/


我认为Deflate的Internet Explorer存在支持问题。
Evan Plaice

2

在Firefox中安装ySlow,它将告诉您正在压缩哪些项目。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.