是否可以创建静态网站重定向规则,重定向www.domain1.com/* --> www.domain2.com
而不维护slug?
如果允许使用通配符,可以这样:
<RoutingRules>
<RoutingRule>
<Condition>
<KeyPrefixEquals>*</KeyPrefixEquals>
</Condition>
<Redirect>
<HostName>www.domain2.com</HostName>
<ReplaceKeyPrefixWith>/</ReplaceKeyPrefixWith>
</Redirect>
</RoutingRule>
</RoutingRules>
答案 0 :(得分:6)
你必须像S3一样思考。&#34;
&#34;密钥前缀&#34;是一个前缀,根据定义,空字符串是所有字符串的前缀 - 因为left(anystring,len('')) == ''
。
所以你不需要通配符 - 你应该能够简单地说出来:
<KeyPrefixEquals></KeyPrefixEquals>
然后,您不想替换前缀 - 您想要替换整个密钥,所以看起来像这样:
<ReplaceKeyWith></ReplaceKeyWith>
你问......为什么它是空的而不是/
?
这是因为,在S3模型中,键空间不以/
开头。 bucket.example.com/foo
的路径为/foo
,但其密钥实际为foo
。