×
HTTPS 请求依次经过 DNS、TCP、TLS、反向代理和应用服务器的安全链路示意图
HTTPS 请求依次经过 DNS、TCP、TLS、反向代理和应用服务器的安全链路示意图
结论速览

一次 HTTPS 访问至少跨越 DNS、TCP、TLS、HTTP、反向代理与应用六个环节。慢、断或证书错误,必须先定位发生在哪一层。

适用对象:网络学习者、Web 开发与运维人员 阅读时间:约 12 分钟

一、先建立分层视角

在浏览器输入域名后,系统不会直接“打开网页”。它先需要找到服务器地址,再建立可靠连接,协商加密参数,发送 HTTP 请求,最后由 Nginx、应用和数据库共同生成响应。把问题映射到具体层级,是排障的第一步。

二、DNS:域名如何变成地址

浏览器、操作系统、递归解析器会依次查询缓存。缓存未命中时,递归解析器沿根、顶级域和权威服务器找到记录。TTL 决定缓存可保留多久,因此刚修改的记录不会在全球同时生效。

nslookup www.example.test
curl -v --resolve www.example.test:443:127.0.0.1 https://www.example.test/

第二条命令适合在自有实验环境跳过公网 DNS,对域名、端口和指定地址进行可控验证。

三、TCP:先建立可靠连接

客户端发送 SYN,服务器返回 SYN-ACK,客户端再发送 ACK。序列号、确认号、重传和拥塞控制共同保证可靠传输。若握手失败,应先检查监听地址、安全组、防火墙、路由和端口映射,而不是立即怀疑应用。

四、TLS 1.3:身份与会话密钥

ClientHello 携带支持版本、密码套件和 SNI;服务器返回证书和密钥协商参数。浏览器验证证书链、域名、有效期和信任根后,双方得到会话密钥。此后 HTTP 内容被加密,但源/目的地址、连接时间与部分握手元数据仍可观察。

HTTPS 证明连接经过加密且证书与域名关系可验证,并不证明服务器本身没有漏洞。

五、HTTP 如何穿过 Nginx

请求到达 443 后,Nginx 终止 TLS,按 Host、路径和缓存规则处理。动态请求转发给 WordPress/PHP,应用可能继续访问 MySQL。响应沿原路径返回,浏览器再解析 HTML、CSS、JavaScript 和图片。

六、安全的本地观察

只抓取本人电脑与自有服务器之间的流量,不进行局域网嗅探、ARP 欺骗或第三方流量解密。可使用浏览器网络面板、curl -vss -lntp 和 Wireshark 观察自己的连接。

七、从现象定位慢点

  • DNS 时间高:检查解析器、TTL 和权威响应。
  • 连接时间高:检查路由、丢包、安全组和监听地址。
  • TLS 时间高:检查证书链、OCSP、CPU 和重复握手。
  • TTFB 高:检查 Nginx 缓存、PHP、数据库和外部依赖。
  • 下载完成后仍慢:检查图片、字体、阻塞脚本和布局计算。

官方来源

最后核验:2026-08-12。

作者

相关文章

云、终端、防火墙与零信任节点构成的网络安全学习路线示意图

2026 网络安全学习地图:从 TCP/IP 到零信任

网络安全不是“会几个工具”,而是理解数据如何...

读出全部