Amazon web services S3托管网站的页面级重定向

Amazon web services S3托管网站的页面级重定向,amazon-web-services,amazon-s3,redirect,http-redirect,Amazon Web Services,Amazon S3,Redirect,Http Redirect,我有一个网站(比如example.com),它托管在AWS S3上(bucket name-“xyz”),通过Cloudfront发行版提供流量服务。CDN按照通常的做法将源映射到S3以交付内容。DNS(路由53)记录映射到此CDN分发 我最近从这个S3 bucket中删除了一个对象,比如说xyz/hello/hello jon 因此,当用户试图点击example.com/hello/hello jon时,他们得到了预期的404错误。我想将其重定向到另一个页面,该页面正在从同一个bucket中的

我有一个网站(比如example.com),它托管在AWS S3上(bucket name-“xyz”),通过Cloudfront发行版提供流量服务。CDN按照通常的做法将源映射到S3以交付内容。DNS(路由53)记录映射到此CDN分发

我最近从这个S3 bucket中删除了一个对象,比如说xyz/hello/hello jon 因此,当用户试图点击example.com/hello/hello jon时,他们得到了预期的404错误。我想将其重定向到另一个页面,该页面正在从同一个bucket中的不同对象加载,例如,xyz/world/world right。因此,当用户尝试点击URLexample.com/hello/hello jon时,他们应该被重定向到example.com/world/world right页面

我参考了几个Amazon文档,最后确定了这一个:-

我尝试了第二个示例示例2:将已删除文件夹的请求重定向到页面。在bucket的重定向规则中设置了以下基于JSON的规则xyz:-

[
    {
        "Condition": {
            "KeyPrefixEquals": "hello/hello-jon/"
        },
        "Redirect": {
            "ReplaceKeyPrefixWith": "world/world-right/"
        }
    }
]
重定向确实有效,但预期结果不同。我得到的结果URL为:-

而不是

您是否可以帮助我解决此问题,或者提供一个在这种情况下可行的替代方案?

执行以下更改:

[
    {
        "Condition": {
            "KeyPrefixEquals": "hello/hello-jon/"
        },
        "Redirect": {
            "HostName": "www.example.com",
            "HttpRedirectCode": "301",
            "Protocol": "https",
            "ReplaceKeyPrefixWith": "world/world-right/"
        }
    }
]

在重定向主机的文档中提到。

您好,谢谢您的回答。试过这个。它用于重定向hello/hello jon/(即带有尾随斜杠),但没有斜杠时同样会失败,即hello/hello jon