gpt4 book ai didi

python - 连接中止 .', BadStatusLine("''",) 在服务器上?

转载 作者:行者123 更新时间:2023-12-05 08:54:41 28 4
gpt4 key购买 nike

我使用以下代码从网络获取图像:

path = 'http://domgvozdem.ru/images/ustanovka-kondicionera-svoimi-rukami.jpg'
def exists(path):
r = requests.head(path)
return r.status_code == requests.codes.ok

我遇到了一个错误:

Main error has occurred: ('Connection aborted.', BadStatusLine("''",)) Main error has occurred: ('Connection aborted.', BadStatusLine("''",))

如何解决?它被主机阻止了吗?

最佳答案

当您的 Python 客户端收到空响应( header /正文)时,您会收到此错误。

顺便说一句,较新的 Python 版本会抛出不同的异常,当服务器断开连接或网络问题时,可能会发生这种情况。

就我而言,我们花了数周时间尝试重现它,直到找到主要原因,我们有一个 Python 应用程序向 Nginx 负载均衡器后面的服务发送请求,

我们发现当客户端超过Nginx默认配置的client_header_timeout/client_body_timeout(60秒)时,Nginx会断开连接,这是Nginx等待客户端额外数据包的时间。

你可以关注这个引用 http://nginx.org/en/docs/http/ngx_http_core_module.html#client_body_timeout

当我们的应用程序加载 CPU 处理时,连接已建立,但 header 和请求正文在传输之前有很长的延迟,超过 82 秒。

因此 Nginx 关闭连接并返回重置数据包(记录了带有空主体和 header 的 tcpdump),正式它应该返回状态码 408,这并没有发生。

我们通过将两个参数的 client_header_timeout/client_body_timeout 增加到 180 秒来解决这个问题:

server {
..
client_body_timeout 180s;
client_header_timeout 180s;
}

关于python - 连接中止 .', BadStatusLine("''",) 在服务器上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48814200/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com