AWS CloudFront 响应 307 临时重定向
Posted
技术标签:
【中文标题】AWS CloudFront 响应 307 临时重定向【英文标题】:AWS CloudFront responses 307 Temporary Redirect 【发布时间】:2021-01-20 21:19:30 【问题描述】:物联网设备正在发送数据:
通过 POST 方法 通过 HTTP(不是 HTTPS) 并且不遵循重定向我在 AWS API GateWay 上创建了一个端点,并创建了一个 AWS CloudFront 并进行如下配置:
来源域名: myAPIgw.execute-api.us-west-1.amazonaws.com 源协议政策: 仅限 HTTPS 查看者协议政策:将 HTTP 重定向到 HTTPS 允许的 HTTP 方法: GET、HEAD、OPTIONS、PUT、POST、PATCH、DELETE 缓存政策: Managed-CachingDisabled当我通过邮递员发送请求(自动跟踪重定向已关闭)时,这些是响应:
POST https://myAPIgw.execute-api.us-west-1.amazonaws.com
--> 200 成功
POST https://Mycloudfront.cloudfront.net
--> 200 成功
POST http://Mycloudfront.cloudfront.net
--> 307 临时重定向
有什么想法可以通过 HTTP 获得 200 吗?
【问题讨论】:
将查看器协议设置为 HTTP?我不确定你的目标是什么?您只想使用 HTTP 或 HTTPS? @Marcin 我想通过 http 发送数据,但 API 网关只能通过 https 工作,所以我将数据发送到云端,然后 cloudFront 将 http 重定向到 https,然后将其发送到 Api 网关 【参考方案1】:如果你想使用HTTP,那么你应该设置:
Viewer Protocol Policy: HTTP and HTTPS
和
Origin Protocol Policy: HTTPS Only
通过这种方式,您可以使用 HTTP 或 HTTPS 查询 CloudFront 端点,并且不需要从 HTTP 重定向到 HTTPS。
【讨论】:
以上是关于AWS CloudFront 响应 307 临时重定向的主要内容,如果未能解决你的问题,请参考以下文章
Safari 是不是正确处理临时重定向 (307) 到不同的域?