S3 redirect to codebuild badge with x-amz-website-redirect-location header
我想在s3存储桶中放置一个对象,该对象将重定向到我的codebuild徽章。
我使用以下命令获取代码构建徽章:
1 2 3 4 5 6 | CODEBUILD_BADGE_URL=$(\\ aws codebuild batch-get-projects \\ --name Push \\ --query"projects[0].badge.badgeRequestUrl" \\ --output text \\ ) |
接下来,我得到
我这样做的尝试是:
1 2 | curl https://s3.amazonaws.com/codefactory-us-east-1-prod-default-build-badges/unknown.svg > ./badge.svg aws s3 cp ./badge.svg s3://example.com/badge --metadata"Website-Redirect-Location=$CODEBUILD_BADGE_URL" |
我还添加了此元数据,以防万一以上错误:
1 | aws s3 cp ./badge.svg s3://example.com/badge --website-redirect $CODEBUILD_BADGE_URL |
当我访问:http://example.com/badge或https://s3.amazonaws.com/example.com/badge时,我只得到了
该请求具有以下响应头:
1 2 3 | x-amz-meta-website-redirect-location: https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmlong%3D&branch=master x-amz-request-id: D83EBREQUESTID x-amz-website-redirect-location: https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmlong%3D&branch=master |
和200响应码。
我的example.com存储桶属性已将
如何配置此对象以重定向到所需的代码生成URL?这是解决此类问题的合理方法吗?
等待了一天左右后就可以了,我只需要:
1 | aws s3 cp ./badge.svg s3://example.com/badge --metadata"Website-Redirect-Location=$CODEBUILD_BADGE_URL" |
不需要