我仅在查询参数中包含?img.crop=
件时才尝试重定向。例如。我有此链接:“ http://somedomain.com/pic.jpg?img.crop=400x400”。我只想在有?img.crop=
个片段时裁剪图像。
我尝试使用<KeyPrefixEquals>?img.crop=</KeyPrefixEquals>
,但是它不起作用->仅加载原始图像并且不重定向,即使URL中提供了?img.crop=
个片段。
<RoutingRules>
<RoutingRule>
<Condition>
<KeyPrefixEquals>?img.crop=</KeyPrefixEquals>
</Condition>
<Redirect>
<Protocol>https</Protocol>
<HostName>~*hidden*~</HostName>
<ReplaceKeyPrefixWith>default/resizeLambdaFunction?params=</ReplaceKeyPrefixWith>
<HttpRedirectCode>307</HttpRedirectCode>
</Redirect>
</RoutingRule>
</RoutingRules>
答案 0 :(得分:1)
路由规则不支持评估查询参数。
<KeyPrefixEquals>
仅计算对象关键字前缀,该对象关键字前缀仅包括对象关键字名称,并且不包括任何查询字符串。另外,这是一个“前缀”匹配项,因此按定义是左锚定的。
<ReplaceKeyPrefixWith>
确实允许您在重写过程中在对象键之前插入查询字符串元素,但没有内置支持您尝试进行的匹配。