申请https证书要多久?https证书免费申请流程
- 云服务器
- 2026-07-10
- 9
在数字化时代,网站安全已成为衡量用户体验和搜索引擎排名的关键指标,HTTPS(HyperText Transfer Protocol Secure)不仅通过 SSL/TLS 协议对数据进行加密传输,防止中间人攻破和数据窃听,更是现代浏览器(如 Chrome、Firefox)标记“安全”网站的标配,申请并部署 HTTPS 证书的过程虽然看似复杂,但只要理清步骤,即可顺利完成。
证书类型选择:确定需求
在申请证书之前,首先需要明确网站的安全需求,这决定了你应选择哪种类型的证书,不同的证书类型在验证级别、覆盖范围和价格上存在显著差异。
| 证书类型 | 验证级别 | 适用场景 | 特点 |
|---|---|---|---|
| DV 证书 (域名验证) | 低 | 个人博客、小型企业官网、测试环境 | 仅验证域名所有权,审核速度快(通常几分钟至几小时),价格低廉或免费。 |
| OV 证书 (企业验证) | 中 | 中型企业官网、电商平台、SaaS 服务 | 验证域名所有权及企业真实身份,浏览器地址栏显示企业名称,增强用户信任。 |
| EV 证书 (增强验证) | 高 | 银行、金融、支付平台、大型门户网站 | 严格的企业身份审核,部分浏览器地址栏显示绿色企业名称,提供最高级别信任标识。 |
| 通配符证书 | 视类型而定 | 拥有多个二级域名的企业(如 .example.com) | 一个证书可保护主域名及其所有子域名,节省管理成本,但通常价格较高。 |
生成证书签名请求(CSR)
大多数商业证书颁发机构(CA)要求用户在申请前先生成 CSR(Certificate Signing Request),CSR 是一个包含公钥和组织信息的文件,它不会泄露私钥。
- 生成私钥:在服务器上使用 OpenSSL 等工具生成 RSA 私钥。
- 生成 CSR:利用私钥生成 CSR 文件,在此过程中,需要填写“通用名称”(Common Name, CN),即你要保护的主域名。
示例命令(Linux 环境):
# 生成 2048 位 RSA 私钥 openssl genrsa -out private.key 2048 # 基于私钥生成 CSR 文件 openssl req -new -key private.key -out certificate.csr
注意:请务必妥善保管 private.key,一旦丢失或泄露,证书将不再安全。
选择证书颁发机构(CA)并提交申请
目前市场上主流的 CA 机构包括 DigiCert、Sectigo(原 Comodo)、GlobalSign 等,同时也有一些提供免费 DV 证书的机构,如 Let’s Encrypt。
- 注册账号:在选定的 CA 官网注册账户。
- 填写信息:
- DV 证书:通常只需验证域名所有权,验证方式包括:
- DNS 验证:在域名 DNS 解析中添加一条特定的 TXT 记录。
- 文件验证:将 CA 提供的特定文件上传至网站根目录。
- OV/EV 证书:需上传营业执照、法人身份证等企业资质文件,CA 会通过电话或邮件进行人工审核。
- DV 证书:通常只需验证域名所有权,验证方式包括:
- 提交 CSR:将之前生成的 CSR 内容粘贴到申请页面,或上传 CSR 文件。
- 支付费用:根据证书类型和有效期支付费用(免费证书除外)。
验证与下载证书
提交申请后,CA 机构会进行验证。
- DV 证书:验证通过后,CA 会发送邮件通知,并生成证书文件。
- OV/EV 证书:审核周期通常为 1-5 个工作日,审核通过后同样会生成证书文件。
下载证书时,通常会得到一个压缩包,内含:
- 主证书文件(如 domain.crt 或 domain.pem)
- 中间证书文件(如 ca-bundle.crt 或 intermediate.crt)
- 根证书(通常无需单独下载,但需确保服务器信任链完整)
重要提示:务必下载并安装中间证书,否则可能导致部分浏览器(尤其是移动端)无法识别证书链,显示“不安全”警告。

部署证书到 Web 服务器
证书下载后,需将其配置到 Web 服务器(如 Nginx、Apache、IIS)中。
Nginx 配置示例
在 nginx.conf 或对应的 server 块中添加 SSL 配置:
server { listen 443 ssl; server_name www.example.com; # 证书文件路径 ssl_certificate /etc/nginx/ssl/domain.crt; # 中间证书路径(建议将中间证书合并到主证书后,或单独指定) ssl_certificate_key /etc/nginx/ssl/private.key; # 推荐的安全协议和加密套件 ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; }
Apache 配置示例
在 httpd.conf 或虚拟主机配置中启用 mod_ssl:
<VirtualHost :443> ServerName www.example.com SSLEngine on SSLCertificateFile /etc/httpd/ssl/domain.crt SSLCertificateKeyFile /etc/httpd/ssl/private.key SSLCertificateChainFile /etc/httpd/ssl/ca-bundle.crt </VirtualHost>
IIS 配置(Windows)
- 打开 IIS 管理器。
- 点击“服务器证书”。
- 选择“导入”,选择包含私钥的 PFX 文件(若之前未导出为 PFX,需在生成 CSR 时选择“导出私钥”)。
- 在站点绑定中,添加 HTTPS 绑定,选择导入的证书。
强制 HTTPS 跳转与后续维护
-
HTTP 强制跳转 HTTPS:
为确保所有用户都使用安全连接,需配置 301 重定向。
- Nginx: server { listen 80; server_name www.example.com; return 301 https://$server_name$request_uri; }
- Apache: RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
-
证书续期:

- 商业证书:通常有效期为 1 年,需在到期前 30 天申请续期,流程类似首次申请。
- Let’s Encrypt:有效期仅 90 天,建议使用 certbot 工具配置自动续期脚本。
-
监控与测试:
部署完成后,使用在线工具(如 SSL Labs 的 SSL Test)检测证书配置是否正确,确保无混合内容(Mixed Content)问题,即页面中不应包含 HTTP 资源。
- 免费证书:仅验证域名所有权,适合个人项目、测试环境或对成本敏感的小型网站,其缺点是有效期短(90天),需频繁续期(需配置自动化脚本),且不提供企业身份验证,无法在浏览器地址栏显示企业名称。
- 商业证书:提供 OV/EV 级别的企业身份验证,增强用户信任感,尤其适合电商、金融等涉及交易的平台,商业证书通常有效期为 1-3 年,管理成本较低,且 CA 机构提供技术支持和赔付保障。
- 选择建议:如果是个人博客或内部测试,选免费证书;如果是面向公众的商业网站,尤其是涉及用户数据或交易,建议购买 OV 或 EV 商业证书。
- 启用 HTTP/2 或 HTTP/3:这些协议支持多路复用和头部压缩,能有效减少 HTTPS 带来的延迟。
- 启用 OCSP Stapling:默认情况下,浏览器需向 CA 服务器查询证书状态,这会增加延迟,启用 OCSP Stapling 后,Web 服务器会缓存并主动提供证书状态响应,大幅加快握手速度。
- 使用 TLS 1.3:相比 TLS 1.2,TLS 1.3 减少了握手往返次数(从 2-RTT 降至 1-RTT,甚至 0-RTT),显著提升连接速度。
- 配置会话复用(Session Resumption):通过 Session ID 或 Session Ticket 机制,允许客户端在后续连接中复用之前的会话参数,避免完整的握手过程。
- CDN 加速:使用支持 HTTPS 的 CDN 服务,将 SSL 卸载到边缘节点,减轻源站压力并优化全球访问速度。
相关问题与解答
Q1: 申请免费证书(如 Let’s Encrypt)和商业证书有什么区别?我应该如何选择?
A: 免费证书(主要是 DV 类型)和商业证书的核心区别在于验证级别、信任背书和技术支持。
Q2: 部署 HTTPS 后,网站加载速度变慢了,该如何优化?
A: HTTPS 确实会增加额外的握手开销,但通过以下优化手段可以显著缓解性能影响:
