我在使用查询字符串数据使 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 未编码)。
以前有没有人处理过这种问题?你能找到解决办法吗?
谢谢!