代码之家  ›  专栏  ›  技术社区  ›  Robert Deml

移动设备获取HTTP 504错误

  •  1
  • Robert Deml  · 技术社区  · 15 年前

    我正在尝试调试为什么一个移动设备试图连接到我的嵌入式Web服务器得到一个“HTTP 504错误:网关超时”。一台个人电脑可以很好地连接,只有黑莓和手机才会出现这种错误。

    504错误是什么意思?
    我该怎么办?

    2 回复  |  直到 15 年前
        1
  •  1
  •   Tim Cooper    11 年前

    超文本传输协议 status code 504 意味着您的Web服务器超时。此消息可能是由于服务提供商的路由器/网关速度较慢造成的,但也可能是因为嵌入的Web服务器对您的电话响应速度较慢(反之亦然,即使这是非常不可能的)。

    您可能想尝试使用WLAN连接(而不是3G)将手机连接到Web服务器,以查看是否存在此问题。

    编辑类别:
    您可以考虑实现对Web服务器的调试输出。另外,使超时参数可配置也很有用。

        2
  •  0
  •   james.garriss Pavel    13 年前

    不,504并不意味着您的Web服务器超时。这意味着中间代理在等待源服务器完成请求时超时。”服务器在充当网关或代理时,没有收到来自由URI指定的上游服务器的及时响应。“(http://www.w3.org/protocols/rfc2616/rfc2616-sec10.html sec10.5.5)很可能表明源服务器存在某种问题,因此它没有对转发的请求作出快速响应。

    可能的解决方案:

    • 找出用于处理BlackBerry请求的代理;增加其超时值。
    • 检查代理是否以任何方式更改了您的请求;因为PC可以连接,所以可能是请求被更改了。
    • 以不同的方式提出请求(如果可能),这样一次请求的数据就更少了