网站没有小锁?免费 SSL 证书申请教程,3 种方法任你选!
浏览器地址栏那个绿色小锁,不仅好看,还关系到安全和 SEO。本文介绍 3 种免费获取 SSL 证书的方法,从一键傻瓜式到命令行高手,总有适合你的。
一、为什么必须有 HTTPS?
HTTP vs HTTPS
HTTP: http://你的网站.com ← 明文传输,可能被窃听/篡改
HTTPS: https://你的网站.com ← 加密传输,安全可信
| 对比项 | HTTP | HTTPS |
|---|---|---|
| 数据传输 | 明文,可被窃听 | 加密,安全 |
| 浏览器显示 | "不安全" 警告 | 绿色小锁 🔒 |
| SEO 排名 | 降低 | 提升(Google 加分) |
| 用户信任 | 低 | 高 |
| 微信小程序 | 不支持 | 必须 |
2025 年了,没有 HTTPS 的网站,浏览器会直接显示红色「不安全」警告,用户看了都不敢继续访问。
二、SSL 证书是什么?
SSL 证书就是给网站办一张"身份证",证明「这个网站真的是它声称的那个网站」。
证书由 CA(证书颁发机构) 签发。以前 SSL 证书很贵(几百到几千元一年),现在有了免费 CA,普通人也能零成本搞定 HTTPS。
三、方法一:Cloudflare 一键开启(最简单)
适合人群:已经把域名 DNS 托管到 Cloudflare 的用户
如果你用了 Cloudflare(上期教程有讲),SSL 是自动配置的,几乎不需要额外操作。
步骤
- 登录 Cloudflare → 选择你的域名
- 左侧菜单 → SSL/TLS
- 加密模式选择 Full(strict)
- 开启「Always Use HTTPS」
搞定!你的网站就已经是 HTTPS 了。Cloudflare 会自动签发和管理证书,还能自动续期,完全不用操心。
优点
- ✅ 零操作,自动配置
- ✅ 自动续期,永不过期
- ✅ 附带 CDN 和 DDoS 防护
缺点
- ❌ 必须把 DNS 托管到 Cloudflare
- ❌ 流量经过 Cloudflare 中转

上图是 Let's Encrypt 中文官网的入门指南页面。Let's Encrypt 通过 ACME 协议自动签发数字证书,是世界上最大的免费 SSL 证书颁发机构。
四、方法二:Let's Encrypt 免费证书(最通用)
适合人群:有自己的服务器/VPS,想直接给服务器配证书
Let's Encrypt 是目前全球最大的免费 CA,由 Mozilla、思科、Google 等大公司支持,所有主流浏览器都信任。
安装 Certbot
Certbot 是 Let's Encrypt 官方推荐的证书申请工具。
Ubuntu/Debian
sudo apt update
sudo apt install certbot python3-certbot-nginx
CentOS/RHEL
sudo yum install epel-release
sudo yum install certbot python3-certbot-nginx
macOS
brew install certbot
申请证书
Nginx 用户:
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
Apache 用户:
sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
仅获取证书(手动配置):
sudo certbot certonly --standalone -d yourdomain.com
Certbot 会自动验证域名所有权(在你的服务器上放置验证文件),验证通过后自动签发证书并配置 Nginx/Apache。
设置自动续期
Let's Encrypt 证书有效期只有 90 天,需要设置自动续期:
# 测试续期是否正常
sudo certbot renew --dry-run
# 添加定时任务(一般安装时已自动添加)
sudo crontab -e
# 添加这一行:
0 3 * * * certbot renew --quiet && systemctl reload nginx
这样每天凌晨 3 点自动检查,快过期时自动续期,证书永不过期。
优点
- ✅ 完全免费,无任何限制
- ✅ 全球浏览器信任
- ✅ 支持泛域名证书(*.yourdomain.com)
缺点
- ❌ 需要服务器操作权限
- ❌ 90 天需要续期(但可自动化)
- ❌ 需要命令行操作
五、方法三:在线工具申请(适合虚拟主机用户)
适合人群:用虚拟主机/共享主机,没有命令行权限
很多虚拟主机(如 InfinityFree)已经在后台集成了免费 SSL,在控制面板一键开启即可。
如果你的主机没有自带 SSL,可以用第三方在线工具:
ZeroSSL
- 打开 zerossl.com
- 输入你的域名 → 选择 90 天免费证书
- 选择验证方式(推荐 HTTP 文件验证或 DNS 验证)
- 按要求完成验证
- 下载证书文件
- 上传到虚拟主机的 SSL 管理面板
SSL For Free(基于 Let's Encrypt)
- 打开 sslforfree.com
- 输入域名 → 选择手动验证
- 下载验证文件,上传到网站根目录
- 验证通过后下载证书
优点
- ✅ 不需要命令行
- ✅ 有网页界面,操作直观
- ✅ 适合虚拟主机/共享主机
缺点
- ❌ 需要手动操作
- ❌ 到期需手动续期
六、三种方法对比
| 方法 | 难度 | 自动续期 | 适用场景 |
|---|---|---|---|
| Cloudflare | ⭐ 傻瓜式 | ✅ 自动 | 已托管 DNS 到 CF |
| Let's Encrypt + Certbot | ⭐⭐ 需命令行 | ✅ 自动 | 有服务器权限 |
| 在线工具 | ⭐⭐ 网页操作 | ❌ 手动 | 虚拟主机/共享主机 |
推荐顺序:Cloudflare > Let's Encrypt > 在线工具
七、验证 HTTPS 是否配置正确
配置完 SSL 后,用以下方法验证:
1. 浏览器检查
打开你的网站,地址栏应该显示 🔒 小锁图标。点击小锁可以查看证书详情。
2. 在线检测工具
- SSL Labs:ssllabs.com/ssltest — 最权威的 SSL 检测
- Why No Padlock:whynopadlock.com — 排查混合内容问题
3. 常见问题排查
| 问题 | 原因 | 解决 |
|---|---|---|
| 小锁显示但带警告 | 页面引用了 HTTP 资源 | 把所有图片/CSS/JS 链接改为 HTTPS |
| 证书不受信任 | 使用了自签证书 | 用 Let's Encrypt 或 Cloudflare |
| 证书域名不匹配 | 证书签发的域名和访问的不一致 | 重新申请包含正确域名的证书 |
| 证书过期 | 没有续期 | 续期证书,设置自动续期 |
八、免费虚拟主机 + 免费 SSL = 零成本 HTTPS
回到我们的零成本建站方案:
DNSHE 免费域名
+
InfinityFree 免费虚拟主机(自带免费 SSL)
+
Cloudflare CDN(自带免费 SSL)
实际上你甚至不需要手动折腾 SSL 证书!InfinityFree 控制面板自带一键开启 SSL 功能,Cloudflare 也是自动配置。
零成本,全自动 HTTPS,这不香吗?
九、小结
| 关键点 | 说明 |
|---|---|
| 🔒 HTTPS 是必须的 | 没有 HTTPS,浏览器会警告,SEO 会降权 |
| 🆓 SSL 可以免费 | Let's Encrypt、Cloudflare、ZeroSSL 都免费 |
| 🤖 自动续期很重要 | Let's Encrypt 90 天有效,用 Certbot 自动续 |
| ☁️ 推荐 Cloudflare | 最省心,零操作,还附带 CDN 和防护 |
现在就检查一下你的网站有没有 HTTPS。如果没有,选一个方法马上搞定——真的不难!
📌 系列文章:
- 新手必看:DNSHE 免费域名注册全攻略
- 免费虚拟主机注册全攻略
- DNS 解析从入门到精通
- Cloudflare 免费 CDN 配置教程
- 内网穿透教程——让家里电脑变成服务器
- GitHub Pages 搭建免费个人网站
- 本文:免费 SSL 证书申请教程