Apache 为什么png大小不';使用http gzip压缩后不会发生变化

Apache 为什么png大小不';使用http gzip压缩后不会发生变化,apache,.htaccess,gzip,deflate,http-compression,Apache,.htaccess,Gzip,Deflate,Http Compression,我使用以下.htaccess设置gzip压缩: AddOutputFilterByType DEFLATE text/html image/png image/jpeg text/css text/javascript 请检查此url: gzip压缩适用于html、css、js和jpg,但不适用于png(真是太神奇了)png已经是一种压缩数据格式。用GZIP压缩它不太可能减小大小,实际上可以使它变大 我很惊讶,当GZIP压缩jpg时,您会看到它的好处,因为它们也是压缩的 有关使用GZIP的谷歌

我使用以下.htaccess设置gzip压缩:

AddOutputFilterByType DEFLATE text/html image/png image/jpeg text/css text/javascript
请检查此url:


gzip压缩适用于html、css、js和jpg,但不适用于png(真是太神奇了)

png已经是一种压缩数据格式。用GZIP压缩它不太可能减小大小,实际上可以使它变大

我很惊讶,当GZIP压缩jpg时,您会看到它的好处,因为它们也是压缩的


有关使用GZIP的谷歌提示,请参阅。他们建议不要将其应用于图像。

PNG图像格式已经在内部使用了deflate压缩。因此,在使用HTTP压缩的基础上,通常不会看到传输大小有任何明显的减少。因此,您应该将image/png从您提到的列表中删除,以避免在冗余压缩步骤上浪费服务器和客户端的CPU周期。

如果您想减少png的使用量
或其他png优化器。是的,它也完全支持alpha通道。

PNG是一种无损图像压缩格式。基本上,它使用空间压缩来充分保持原始图像的质量。如果没有质量损失,就无法进一步压缩它(您需要使用另一种无损格式来查看它是否工作得更好)

不需要使用GZIP(或等效工具),因为它只会添加用于解压缩客户端图像的处理


对于JPEG,您所能做的最好的事情就是确保使用正确的分辨率和质量设置。GZIP最多只能产生混合结果。确保从中删除所有元数据(除非您需要客户端的信息,但最好将这些数据保存在数据库中)。

只需使用tinypng.com将14k字节的png压缩为540字节!!它支持有效的1位alpha通道,因此100%透明或100%不透明。这会在某些背景上产生可怕的抗锯齿效果,但如果你知道背景颜色,你可以调整图像的边缘,使其很好地融合。@Simon_Weaver抱歉,你错了。在这个网站的优化图片上有一个渐进的alpha频道。我不知道你是从哪里得到这些信息的,但是你可以通过优化这张图片@Pawel来发现你自己,我希望我错了:)但是我使用tinypng的任何时候,它都有锋利的边缘。当我醒来时将尝试此操作。@rraallvv有CLI,但它使用的是付费远程服务。有免费的、本地的选择