gpt4 book ai didi

performance - 浏览器可能无法理解 gzip 内容的原因

转载 作者:可可西里 更新时间:2023-11-01 16:58:19 26 4
gpt4 key购买 nike

出于性能原因,我尝试将静态资源(css 和 javascript)作为缓存的 gzip 文件提供。

页面在呈现时看起来是 gzip 压缩的,根据 LiveHTTPHeaders,Content-Encoding 正确设置为 gzip,最重要的是,gzip 压缩后的内容通过 GIDZipTest 页面 (http://www.gidnetwork.com/tools/gzip-test.php) 就好了。这是测试输出的示例:

Web page compressed? Yes

Compression type? gzip

Size, Markup (bytes) 18,286

Size Compressed (bytes) 4,427

Compression % 75.8

----

ResponseHeaders

status HTTP/1.0 200 OK

pragma no-cache cache-control private, max-age=86500

expires Mon, 24 Aug 2009 04:34:14 GMT

x-amz-acl public-read

content-type text/css

content-md5 hqJaTBS3OzDFet/QHsd+ Qg==

content-encoding gzip

date Wed, 19 Aug 2009 04:34:14 GMT

server -- my server --

content-length 4427

内容编码 header 以粗体显示,所有其他 header 均符合预期。

测试页面还显示了未压缩的页面源代码,它始终与我期望的未压缩页面完全一样,我什至尝试复制并粘贴它以供浏览器呈现,并且它有效,所以问题必须出在识别页面已压缩并解压缩的实际步骤中。

而且这不是特定于浏览器的。在 FF、Webkit 和 IE 中,这些 gzip 文件未正确解压缩。我已经尝试了我能想到的一切,但真的很困惑。

最佳答案

也许您有其他东西对文件进行第二次 gzip 压缩,但仅适用于在 accept-encoding 中列出它的 http 1.1 客户端,就像大多数浏览器一样。 GIDZipTest 正在发送 http 1.0 请求,并且 gzipping 到 1.0 客户端是有风险的,因为 http 1.0 没有接受编码字段供客户端指示它们支持哪些编码,所以它对第二个压缩器有意义(如果有一个) 不 gzip 到 1.0 客户端。如果是这种情况,GIDZipTest 将获得单 gzip 压缩响应,而浏览器将获得双 gzip 压缩(错误)响应。不过,这只是一种可能性。很少见,但它确实发生了。

如果不是这样,您真的应该提供更多信息,例如出现问题的页面的 URL。

关于performance - 浏览器可能无法理解 gzip 内容的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1297857/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com