我无法使用查询字符串数据使CloudFront缓存内容无效。
例如,假设我试图使以下内容无效:
http://d114hh0cykwyb0.cloudfront.net/imagesizer.php?h=80&src=/images/foo.jpg
我使用AWS SDK发送失效路径,即: /imagesizer.php?h=80&src=/images/foo.jpg
然后我将进入AWS控制台 - > CloudFront->分发设置 - >无效
我看到了我的新失效请求。如果我在其上看到“详细信息”,则对象路径说: /imagesizer.php%3Fh%3D80%26src%3D/images/foo.jpg
所以路径已被编码。但是,在失效完成后, http://d114hh0cykwyb0.cloudfront.net/imagesizer.php?h=80&src=/images/foo.jpg 保持不变。
我还尝试使用以下路径在AWS控制台中使用“创建失效”: /imagesizer.php?h=80&src=/images/foo.jpg
但是我得到一个XML解析错误(因为URL没有编码)。
之前有没有人处理过这类问题?你能找到解决方案吗?
谢谢!