Lambda@Edge

lambda@edge有两种用途,一种是更改CloudFront的请求和返回行为:

image-20191218195912286

Viewer Request

  • 更改请求的URL、cookie等。
  • 进行认证和授权的检查。

Origin Request

这一步发生在没有命中缓存,从源中取数据之前

  • 可以根据请求头动态地选择内容。

Origin Response

  • 更改返回头。
  • 如果没有从源中取到数据,可以将4XX、5XX错误拦截并替换。

Viewer Response

这一步发生在数据从源或者缓存中返回给客户端时。

在返回结果前可以更改响应头。

另一种是返回动态内容:

image-20191113145534984