我有一个流量问题,希望能得到一些帮助:
用户请求 -> Route 53 -> Cloudfront -> Elastic Load Balancer -> EC2 Instance -> Nginx -> App Server - {计算 URL 以下载 S3 资产} -> {返回带有 URL 的 X-Accel-Redirect 标头从 S3} -> Nginx -> {将 X-Accel-Redirect 标头拆分并重新组装回 S3 URL} -> S3 资产 -> Cloudfront -> 用户代理!
因此,如果我直接向 Elastic Load Balancer 或 EC2 实例发出请求,这可以正常工作,但是一旦我尝试通过 Cloudfront 发出请求(通过将 Cloudfront 指向 ELB 或直接指向 EC2 实例),我取回 SignatureDoesNotMatch XML 响应并且没有资产。
有谁知道为什么通过 Cloudfront 访问 S3 资产会导致此问题?