我正在使用 curl curl -v https://example.com
最后它说* Connection #0 to host example.com left intact。这意味着什么?
Ren*_*nex 26
简短的回答:当您只请求一个 URL 时,这没有任何意义。完成并且进程退出后,尽管存在误导性消息,但curl连接在任何地方都没有保持完整;正如您所期望的那样,它已关闭。
仅当您在同一curl调用中获取多个 URL 时,才会重用该连接。在这种情况下,这是一件好事,您不需要强制关闭连接,除非您正在调试连接问题。
(当我想检查是否curl以某种方式在我的 shell 后台保持连接打开时,我也去寻找答案。事实并非如此。)
Mar*_*tin 16
向 CURL 命令添加标题“Connection: close”应该可以解决问题:
curl -v -H "Connection: close" https://example.com
Run Code Online (Sandbox Code Playgroud)
可以在这篇文章中找到解释:
为什么连接完好无损?
连接保持不变,因为服务器允许它保持打开状态,并且在您收到发送的请求的响应后,CURL 无需关闭它。这就是为什么当您期望 'Connection:close' 时请求返回 'Connection: keep-alive' 标头的原因
如果您想关闭连接,那么您可以发送带有“Connection: close”的 CURL 请求,如下所示,您可以在响应中看到“* Closing connection 0”。
我希望文章https://www.sneppets.com/software/connection-0-to-host-localhost-left-intact/可以帮助您解决问题。