可以在.htaccess中配置自动解压吗?

可以在.htaccess中配置自动解压吗?

我在 Apache2 Web 根目录中有一堆静态文件(例如index.xhtml)。我无法控制服务器的配置,但可以.htaccess在 Web 根目录中进行修改。

我想预先压缩文件(例如index.xhtml.gz)以缩短加载时间并减少带宽消耗。但是,如果我这样做,不支持自动检测内容编码的用户代理将无法与该网站配合使用。

我认为这些代理与有能力的代理相比非常少见,因此内容应该以解压缩的形式提供仅有的如果代理不发送gzipAccept-Encoding头。声称支持 gzip 但实际上不支持的代理无需担心。

大多数关于压缩的网站都假设它是即时执行的,我希望避免这种情况以减少消耗的 CPU 时间。

答案1

据我所知,只有当您有权在盒子上运行 CGI 脚本或破解 Apache 时才可以。

但是,通常的做法并不是按照您的要求去做。通常的做法是先将文件存储为未压缩状态,然后使用 mod_deflate 进行动态压缩。

#
# Compress most things
#
<Location />
  SetOutputFilter DEFLATE
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  BrowserMatch \bMSIE !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
</Location>

这是在我的 httpd.conf 中,它可能需要针对 .htaccess 进行一些更改。

相关内容