amazon-cloudfront会遵循308重定向吗?

时间:2018-06-01 19:24:06

标签: amazon-web-services amazon-cloudfront

我正在设置亚马逊云端,并且一直在玩缓存控制设置。明确声明here,amazon-cloudfront不会关注301307

我想知道是否有关于如果原点返回308是否会遵循重定向的文档?

2 个答案:

答案 0 :(得分:1)

在这里没有提到302和308似乎有点奇怪,但CloudFront不遵循重定向。它们存储在缓存中并返回到浏览器。

您可以使用Lambda @ Edge响应触发器拦截重定向,但典型的应用程序是重写Location标头并将浏览器发送到原本不会去的地方。

对于小响应,可以使用使用Node HTTP客户端发出请求的Origin Response触发器实际遵循重定向,但这仅支持总大小为1 MB的响应,并且可能不会像只需让浏览器按照重定向即可。

答案 1 :(得分:0)

这里有一些处理重定向的additional documentation

  

如果更改原始服务器上对象的位置,则可以   配置您的Web服务器以将请求重定向到新位置。   配置重定向后,查看器第一次提交   请求对象,CloudFront Front将请求发送给   原点,原点以重定向响应(例如,302   暂时移动)。 CloudFront缓存重定向并将其返回   观众。 CloudFront不遵循重定向。

     

您可以将Web服务器配置为将请求重定向到其中一个   以下地点:

The new URL of the object on the origin server. When the viewer follows the redirect to the new URL, the viewer bypasses CloudFront
     

直接走向原点。因此,我们建议您   不会将请求重定向到原始对象的新URL。

The new CloudFront URL for the object. When the viewer submits the request that contains the new CloudFront URL, CloudFront gets the
     

来自原点上新位置的对象,将其缓存在边缘   location,并将对象返回给查看器。后续请求   对象将由边缘位置提供。这避免了   与请求对象的查看者关联的延迟和负载   起源。但是,每次对该对象的新请求都将产生   对CloudFront的两个请求收费。

但是因为301308 only difference308

  

不允许将请求方法从POST更改为GET

我猜它会像301一样处理。