开发者社区 > 飞天洛神云网络 > 负载均衡 > 正文

负载均衡访问日志里有400状态码,但ECS上的服务没有任何报错

负载均衡访问日志里有400状态码,但ECS上的服务没有任何报错。

展开
收起
游客rda5n5ukztvu2 2022-12-09 11:34:27 189 0
2 条回答
写回答
取消 提交回答
  • 全栈JAVA领域创作者

    在阿里云的负载均衡(ALB)中,如果您访问日志中出现了HTTP 400 Bad Request错误,但是后端应用程序(例如ECS实例)没有任何报错,则可能是由于以下原因:

    应用程序配置错误:如果您的应用程序配置错误,可能会导致HTTP 400 Bad Request错误。例如,如果您的应用程序配置了错误的请求头或者请求参数,可能会导致HTTP 400 Bad Request错误。建议您检查应用程序的配置是否正确。
    应用程序缓存问题:如果您的应用程序使用了缓存,可能会导致HTTP 400 Bad Request错误。例如,如果您的应用程序缓存了错误的数据,可能会导致HTTP 400 Bad Request错误。建议您检查应用程序的缓存配置是否正确。
    应用程序异常处理问题:如果您的应用程序没有正确处理异常情况,可能会导致HTTP 400 Bad Request错误。例如,如果您的应用程序在处理请求时出现了异常,但是没有正确地处理异常情况,可能会导致HTTP 400 Bad Request错误。建议您检查应用程序的异常处理逻辑是否正确。
    如果您仍然无法解决问题,建议您联系阿里云技术支持获取帮助。

    2023-07-08 15:38:31
    赞同 展开评论 打赏
  • 问题总能找到解决方案的

    400(Bad Request)

    客户端HTTP请求格式异常。

    可能原因:

    • 后端服务器直接返回400,ALB透传后端状态码给客户端,请排查后端服务器返回400的原因。
    • HTTP头部格式错误,例如content length与请求body长度不一致等,建议在客户端抓包分析HTTP请求的格式,并和正常的请求进行比较。
    • ALB实例添加了HTTPS监听,当客户端发送的请求不是HTTPS请求且返回400状态码时,建议排查客户端是否有将HTTP请求发送至HTTPS端口。
    • 在HTTP请求发送完成前,客户端主动关闭连接,建议抓包排查客户端断连原因。
    • ALB要求每个HTTP header最大不超过32 KB,超过该限制会返回400状态码,建议调整HTTP头部或标头的长度。

    更多信息可参考:ALB状态码说明

    2023-01-03 16:27:05
    赞同 展开评论 打赏

阿里云负载均衡(Server Load Balancer,简称SLB)是云原生时代应用高可用的基本要素。通过将流量分发到不同的后端服务来扩展应用系统的服务吞吐能力,消除单点故障并提升应用系统的可用性。 阿里云SLB包含面向4层的网络型负载均衡NLB、面向7层的应用型负载均衡ALB和传统型负载均衡CLB,是阿里云官方云原生网关。

相关产品

  • 负载均衡
  • 热门讨论

    热门文章

    相关电子书

    更多
    低代码开发师(初级)实战教程 立即下载
    冬季实战营第三期:MySQL数据库进阶实战 立即下载
    阿里巴巴DevOps 最佳实践手册 立即下载