CloudFront's "Origin Path" does not work with S3 Static Website's 302 redirects

0

I have an S3 bucket with static website hosting with the following file:

production/pages/index.html

I have created a CloudFront distribution pointing to this bucket, with the Origin Path set to "/production". When navigating to xxx.cloudfront.net/pages/ I can correctly see my index.html file.

When navigating to xxx.cloudfront.net/pages (without the trailing slash), the S3 static site hosting sends a 302 redirect to xxx.cloudfront.net/production/pages/, which ignores the Origin Path and returns a 404.

How can I make my system work to be able to have the redirection to xxx.cloudfront.net/pages/ instead?

Adrien
已提问 2 年前587 查看次数
1 回答
0
已接受的回答

I was able to solve it by having the following redirection on my S3 static website. Not the best solution because this causes 2 redirections, but it works.

[
    {
        "Condition": {
            "KeyPrefixEquals": "production/production/"
        },
        "Redirect": {
            "HostName": "mydomain.com",
            "HttpRedirectCode": "302",
            "Protocol": "https",
            "ReplaceKeyPrefixWith": ""
        }
    }
]
Adrien
已回答 2 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则

相关内容