动机:我们正在维护一个在https://customerRelationsSite.com场所托管的网站
该网站即将消失,我们希望在以下使用情况下创建重定向到其他网站的URL
将https://customerRelationsSite.com/eula/prodmanager?app=myapp重定向到domain.salesforce.com/eula/prod/myapp
或将https://customerRelationsSite.com/eula/prodmanager?app=myapp重定向到domain.salesforce.com/eula/prod/myapp
同时将创建更多链接,这些链接将逐渐替换当前的站点链接,即https://customerRelationsSite.com/otherPaths,该链接将重定向到其他站点https://othersite/newPath,因此该解决方案应可配置为添加新的重定向< / p>
我们正在寻找以下选项:
或
或
location ~ ^/path/(?<section>.*) {
resolver 8.8.8.8;
proxy_pass https://othersite/newPath/$section$is$
}
location ~ ^/eula/prodmanager/(?<section>.*) {
resolver 8.8.8.8;
proxy_pass https://domain.salesforce.com/eula/prod/myapp/$section$is$
}
您会考虑哪种选择? 还是还有其他最佳选择?
答案 0 :(得分:1)
您可以使用静态S3存储桶来做到这一点:
https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html
正如您所说,只需将域指向(通过您喜欢的任何DNS方式)到一个否则为空的S3存储桶,并按照上面的说明设置重定向。
要获得奖励积分,您还可以安装自定义404页面等:
<RoutingRules>
<RoutingRule>
<Condition>
<HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
</Condition>
<Redirect>
<ReplaceKeyWith>404.html</ReplaceKeyWith>
</Redirect>
</RoutingRule>
</RoutingRules>
这避免了通常托管haproxy
实例或Linux实例的任何复杂性,并且具有成本效益且recommended by AWS themselves。
(顺便说一句-404技巧非常适合在S3存储桶中静态托管的Single Page Apps。将所有404 URL重定向回index.html
-让SPA来完成其余工作!)