【问题标题】:AWS cloudfront - cache get request and forward request to server alsoAWS cloudfront - 缓存获取请求并将请求转发到服务器
【发布时间】:2021-07-11 20:30:56
【问题描述】:

我正在实现一个可以集成到网站中的小部件服务。为了快速加载,我使用的是 AWS Cloudfront。

这个小部件的一个特点是当用户点击它时,他们会被我们的服务器重定向到一个特定的 url,并且该点击会立即记录在数据库中。

以下是挑战,我坚持 -

  1. 如何使用 AWS 缓存重定向。云前?例如 - 当用户点击一个小部件时,如果 CDN 缓存中存在 redirect-url,则请求会从 CDN 层重定向到一个 url。

  2. 在上述 CDN 缓存中存在重定向 URL 并且请求仅由 CDN 层完成的情况下,如何将该请求转发到服务器。目标是记录该点击。

任何帮助!

【问题讨论】:

    标签: amazon-cloudfront cdn


    【解决方案1】:

    如果 CDN 正在处理带有缓存响应的请求,根据设计,您的源服务器不需要知道或执行任何操作。

    您可以通过您的小部件调用 AWS Lambda 函数来实现此目的,该函数处理您的重定向,然后记录请求,可能通过调用您的后端服务器。

    以下是有关如何处理重定向的更多信息: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-examples.html

     def lambda_handler(event, context):
    
     # Generate HTTP redirect response with 302 status code and Location header.
     
     response = {
         'status': '302',
         'statusDescription': 'Found',
         'headers': {
             'location': [{
                 'key': 'Location',
                 'value': 'http://docs.aws.amazon.com/lambda/latest/dg/lambda-edge.html'
             }]
         }
     }
     
     return response
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-02-21
      • 1970-01-01
      • 2019-12-29
      • 1970-01-01
      • 2019-11-01
      • 2023-03-21
      • 2012-06-07
      • 2012-04-23
      相关资源
      最近更新 更多