不可能使用CloudFlare为WebP图像提供服务?
我想使用WebP格式优化我的网站上的一些图像。 Webp图像是高度压缩的JPEG和PNG与谷歌开发的algorithm的帮助。 但是,webp图像只能在现代的Chrome和Opera中显示。 如果浏览器支持webp,它将在Accept HTTP标题中指定image/webp 。 如果浏览器支持webp格式,并且如果在磁盘上存在webp版本的图像,那么检查nginx是个不错的主意,如果是这样 – 提供webp图像,如果没有,则提供默认图像。 例如: http://example.com/dog.png , Accept: image/webp, image/png, image/jpeg 。 nginx必须发送dog.png.webp http://example.com/dog.png , Accept: image/png, image/jpeg 。 nginx必须发送dog.png 在这个nginxconfigurationhttps://github.com/igrigorik/webp-detect/blob/master/nginx.conf和https://github.com/kavu/sprockets-webp#nginx中可以find更多的解释 没关系。 但是我正在使用CloudFlare CDN来加速资产交付。 有了这样的图像服务条件,我们必须添加头Vary: Accept所以caching浏览器和代理将正常工作。 但有个问题! CloudFlare仅支持Vary: Accept-Encoding 。 这在这里描述。 客户端将获得由CloudFlare第一(WebP或常规)caching的图像版本,如果客户端不支持WebP,它将不会看到图像,这是可怕的。 有没有解决办法?