SEO 百科
SSL 与 TLS
本页目录
SSL 与 TLS
SSL 与 TLS 是两套加密协议,用来保护浏览器与服务器之间的连接。TLS 是 SSL 的后继版本,今天实际通行的是 TLS[1]。网站装上证书并启用 HTTPS,浏览器与服务器之间的数据就不再明文传输,中间人看不到,也改不了[7]。站长要做的决定有三项:证书选哪种、用免费还是付费、怎么保证它不过期。三项都直接落在成本与抓取上。
加密通道的位置与作用
TLS 位于应用协议与传输层之间。HTTP 叠在它上面,就成了 HTTPS[2]。握手阶段协商算法与密钥,记录阶段保护之后每一个数据包[3]。
RFC 8446 写明,安全通道要提供“认证、机密性、完整性”三项保证[3]。认证确认服务器就是它声称的那个站点,机密性保证数据只有两端能看见,完整性保证数据在途中没有被改动。
证书在握手里起作用。MDN 指出,浏览器都要求服务器“提供一个有效的数字证书来确认身份以建立安全连接”[2]。证书由证书颁发机构签发,浏览器内置受信任的根证书,用它来核对站点出示的那一份。
证书的类型与取舍
证书按覆盖的名称分成三类。
- 单域名证书只对一个主机名有效,例如
www.example.com。 - 通配符证书覆盖同一域名下的同级子域名,例如
*.example.com。 - 多域名证书把多个主机名写进一张证书,也叫 SAN 证书[5]。
公开信任的服务器证书由 CA/Browser Forum 分成三类:域名验证、组织验证、个人验证[4]。免费证书以域名验证为主。Let's Encrypt 明确说只提供域名验证证书,不签发组织验证与扩展验证证书,原因是后两类无法自动签发[5]。
免费证书的规模已经很大。Web Almanac 2025 统计,移动端页面里有 52.6% 由 Let's Encrypt 签发[9]。统计口径是 HTTP Archive,覆盖范围有限。
付费证书能做到组织验证与个人验证,免费证书不做这两类[5]。要向用户显示单位名称的站点,才值得为这两点付费。
证书过期与链不完整
证书有有效期,过期之后浏览器与爬虫都会拒绝连接。Let's Encrypt 的默认有效期是 90 天,订阅者还可以选用 6 天的短周期证书[6]。官方建议 90 天证书每 60 天续一次,短周期证书每 3 天续一次[5]。
有效期还在缩短。按行业规则,2029 年 3 月 15 日起证书有效期上限降到 47 天,Let's Encrypt 计划在 2028 年 2 月前把上限降到 45 天[6]。周期越短,人工续期越容易漏,自动续期从可选变成必需。
链不完整是另一类失败。服务器要把站点证书与中间证书一起发出去。缺了中间证书,浏览器往往能自己补齐,爬虫却常常补不上,连接就此中断。
Google 对证书错误的态度很硬。规范网址文档写明,错误的 TLS/SSL 证书“会导致 Google 非常强烈地偏好 HTTP”[8]。
主机名也要对得上。同一份文档提醒,证书要与完整网址匹配;给错误的主机变体装证书就是一个反例,可以用覆盖多个子域名的通配符证书代替[8]。
迁移到 HTTPS 与收录
HTTP 与 HTTPS 之间,Google 更偏好后者作为规范网址[8]。想让这个偏好站得更稳,可以做两件事:把 HTTP 页面跳到 HTTPS 页面,或者在 HTTP 页面加一条 rel="canonical",指向 HTTPS 版本[8]。
反过来做会把偏好推向 HTTP。HTTPS 跳回 HTTP、页面里留着不安全依赖,都会被 Google 看成相反信号[8]。
上了 HTTPS 不等于收录就会变好。它只是规范化偏好的一个信号,内容与结构仍是前提。
服务器上的写法大致如下:
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/ssl/example.com/fullchain.pem;
ssl_certificate_key /etc/ssl/example.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
}
fullchain.pem 把站点证书与中间证书放在一起,正好对应前面说的链完整问题。
常见误用
- 装完证书就不管,等过期当天才发现。有效期只有几十天,人工续期迟早会漏。
- 只发站点证书,不发中间证书。浏览器能补齐,爬虫常常补不上。
- 给错误的主机名装证书,两边都报错[8]。
- 以为上了 HTTPS 收录就会变好。它只是规范化偏好的一个信号。
附录
参见
参考资料
官方(境外)
- 《SSL(安全套接层)》,MDN Web 文档术语表,2025-12-02 更新。
- 《TLS》,MDN Web 文档术语表,2025-12-02 更新。
- 《The Transport Layer Security (TLS) Protocol Version 1.3》,IETF,2018-08。
- 《Baseline Requirements》,CA/Browser Forum,2026-09-07。
- 《Frequently Asked Questions (FAQ)》,Let's Encrypt,2025-04-28 更新。
- 《Certificate Lifetime Rationale and Plans》,Let's Encrypt,2026-07-22 更新。
- 《Why All Websites Should Use HTTPS》,Let's Encrypt,2025-08-03 更新。
- 《如何使用 rel="canonical" 及其他方法指定规范网址》,Google 搜索中心,2026-07-10 更新。
第三方
- 《Security》,HTTP Archive《Web Almanac 2025》,2026-01-15。
外部链接
无。