如何排查与 CloudFront 中的 EC2 源相关的问题?
我正在使用 Amazon Elastic Compute Cloud (Amazon EC2) 实例作为自己的 Amazon CloudFront 分配的自定义源。CloudFront 返回了一个错误。为什么会发生这种情况?如何排查此问题?
解决方案
根据 CloudFront 返回的错误类型,请参阅相关部分了解问题排查步骤。
CloudFront 返回 502 错误
当 Amazon EC2 配置为自定义源时,CloudFront 返回 502 错误的原因有四点。有关问题排查步骤,请参阅以下指南:
CloudFront 返回 503 错误
如果您的 CloudFront 行为关闭了缓存,则所有请求都将定向到源 EC2 实例,而不是从 CloudFront 缓存中提供服务。在此情况下,源 EC2 实例可能会因大量传入请求而变得不堪重负,然后返回 503 错误。
要排查 503 错误,请参阅 原始服务器没有足够的容量来支持请求速率 。
如果 CloudFront 无法将请求路由到下一个最佳可用节点位置,并且不能满足请求,则会返回 503:超出容量 错误。有关更多信息,请参阅 CloudFront 由于节点位置的资源限制而导致错误 。
CloudFront 返回 504 错误
当 Amazon EC2 配置为 CloudFront 分配的自定义源时,CloudFront 返回 504 错误的原因有两点:
有关问题排查步骤,请参阅 HTTP 504 状态代码(网关超时) 。
重定向错误
如果您在浏览器中看到重定向错误,请查看浏览器开发者工具中的“网络”部分。如果您在 CloudFront 分配中看到同一请求的多个实例,则重定向会导致浏览器错误。