【问题标题】:AWS S3 Redirect adding trailing slashes and encoding & as &AWS S3 重定向添加斜杠和编码 & as &
【发布时间】:2018-11-18 16:18:57
【问题描述】:
【问题讨论】:
标签:
amazon-web-services
redirect
amazon-s3
special-characters
urlencode
【解决方案1】:
看到了同样的情况,不想做 html/js 重定向 - 这就是我所做的:
把bucket改成“用这个bucket来托管网站”,把index.html作为索引文件,但不添加实际文件,然后在路由规则里放这个,把&替换成&
<RoutingRules>
<RoutingRule>
<Redirect>
<Protocol>https</Protocol>
<HostName>example.com</HostName>
<ReplaceKeyWith>/test?param1=123&param2=456</ReplaceKeyWith>
</Redirect>
</RoutingRule>
</RoutingRules>
本质上,由于没有指定实际的路由规则,这会将所有流量重新路由到您想要的位置。保存时 & 将转换为 & 并且末尾不会添加斜杠。
【解决方案2】:
谢谢@Ryan,这对我有用。但是,AWS 现在要求重定向规则以 JSON 格式编写,因此这是对@Ryan 答案的更新。 (这里是关于重定向规则的AWS documentation。)
[
{
"Redirect": {
"HostName": "yourdomain.com",
"Protocol": "https",
"ReplaceKeyWith": "/desired/path?with=query"
}
}
]