curl -v https://github.com
和
curl https://github.com
的主要区别在于
-v
选项的作用:
1. curl https://github.com
- 这是一个简单的请求,会下载 GitHub 的首页 HTML 内容并输出到终端。
- 默认情况下,
curl
只会在遇到错误时显示基本的信息,不会详细展示连接过程。
2. curl -v https://github.com
-v
选项表示 verbose(详细模式),会输出更多的调试信息,包括:- 连接服务器的过程
- 解析 DNS 的信息
- TCP 连接的建立情况
- TLS/SSL 握手的详细日志
- HTTP 请求头和响应头
- 这个选项非常有用,特别是在调试网络问题时,可以帮助你确定请求卡在哪个环节。
示例:
执行 curl -v https://github.com
时,可能会看到类似的输出:
* Trying 140.82.113.3:443...
* Connected to github.com (140.82.113.3) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
* CAfile: /etc/ssl/certs/ca-certificates.crt
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.3 (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256
> GET / HTTP/1.1
> Host: github.com
> User-Agent: curl/7.68.0
> Accept: */*
这些信息显示了 curl
是如何一步步与 GitHub 服务器建立连接的。
总结:
命令 | 作用 |
---|---|
curl https://github.com | 仅获取网页内容,不显示详细信息 |
curl -v https://github.com | 详细显示连接过程,适用于调试网络问题 |
如果你当前遇到了 curl
连接 GitHub 失败的问题,使用 -v
可以帮助你找到具体卡在哪个环节,比如 DNS 解析失败、无法建立 TCP 连接、TLS 证书问题等。