【问题标题】:Getting 503 as Http response in android?在android中获取503作为Http响应?
【发布时间】:2013-06-27 05:54:44
【问题描述】:

请检查我的 logcat。这是我在解析 http 响应时得到的。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
   <head>
      <title>503 Service Unavailable</title>
   </head>
   <body>
      <h1>Error 503 Service Unavailable</h1>
      <p>Service Unavailable</p>
      <h3>Guru Meditation:</h3>
      <p>XID: 1294992728</p>
      <hr>
      <p>Varnish cache server</p>
   </body>
</html>

我在将图像从 android 上传到服务器时收到此响应。谁能帮我解决这个问题?

【问题讨论】:

    标签: android http-post varnish multipartentity


    【解决方案1】:

    正如您所说的错误是来自服务器的 503,请检查一次 this link。它指出503错误可能由于以下原因而发生:

    1. 从站点的 IP 名称(不带前导“http://”的站点 URL)获取 IP 地址。这种查找(IP 名称到 IP 地址的转换)由域名服务器 (DNS) 提供。
    2. 打开与该 IP 地址的 IP 套接字连接。
    3. 通过该套接字写入 HTTP 数据流。
    4. 接收来自 Web 服务器的 HTTP 数据流作为响应。此数据流包含状态代码,其值由 HTTP 协议确定。解析此数据流以获取状态代码和其他有用信息。

    【讨论】:

    • 感谢您的回复。
    • 欢迎@SREEJITH 很高兴我能帮上忙... :)
    【解决方案2】:

    5xx 类型的错误是服务器端错误。 wiki 上的List of HTTP status codes 指出错误代码503 表示The server is currently unavailable (because it is overloaded or down for maintenance). Generally, this is a temporary state. 因此,简而言之,您的服务器似乎已关闭。

    希望这些信息对您有所帮助。

    【讨论】:

      【解决方案3】:

      如果没有实际看到您的 VCL 文件,很难判断...但考虑到您在上传(POST 请求)时遇到该错误,我猜您遇到了后端超时之一[1]。

      尝试增加超时并查看错误是否仍然存在:

      backend default {
        .host = "your.host.tld"; //Use your current setting
        .port = "XXX";           //Use your current setting
        .connect_timeout = 300s;
        .first_byte_timeout = 600s;
        .between_bytes_timeout = 600s;
      }
      

      [1]https://www.varnish-cache.org/docs/3.0/reference/vcl.html?highlight=timeout#backend-declarations

      【讨论】:

        猜你喜欢
        • 2012-02-08
        • 1970-01-01
        • 2015-07-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-06-28
        • 2012-11-07
        相关资源
        最近更新 更多