怎么部署SSL证书:Nginx和宝塔两种方式的操作步骤

网站要启用 HTTPS,本质是把证书文件和私钥配置到 Web 服务器上,让 443 端口用加密方式响应请求。
下面按“准备文件、选择部署方式、放行端口、验证结果”的顺序展开,Nginx 命令行的做法和宝塔面板的做法分开讲,按自己环境选一种即可。

先确认手里有哪几个文件

从证书服务商下载的压缩包解压后,通常会看到两类文件:域名证书(.crt 或 .pem)和私钥(.key)。
部分服务商还会单独提供一个中间证书或 CA 包。

  • 域名证书:证明这个域名归属的证书主体。
  • 私钥:与证书配对,绝不能泄露,权限建议设为 600。
  • 中间证书/CA 包:用来补齐证书链,缺失时浏览器可能提示证书不受信任。

部署前先确认证书里的域名和你要绑定的域名完全一致,通配符证书(*.example.com)只能覆盖一级子域名。

方式一:在 Nginx 中手动配置

把证书上传到服务器,建议放在 /etc/nginx/ssl/ 目录下,避免和网站代码混在一起:

mkdir -p /etc/nginx/ssl
# 上传后确认文件存在
ls -l /etc/nginx/ssl/
chmod 600 /etc/nginx/ssl/*.key

找到站点配置文件(常见路径 /etc/nginx/conf.d/你的域名.conf 或 /etc/nginx/sites-available/),
在 server 块里加入 443 监听和证书路径:

server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate     /etc/nginx/ssl/example.com.pem;
    ssl_certificate_key /etc/nginx/ssl/example.com.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    root /var/www/html;
    index index.html;
}

如果希望 HTTP 自动跳到 HTTPS,再加一个 80 端口的 server 块做 301 跳转:

server {
    listen 80;
    server_name example.com;
    return 301 https://$host$request_uri;
}

保存后先测试配置语法,再重载服务,不要直接重启:

nginx -t
systemctl reload nginx

nginx -t 输出 syntax is ok 和 test is successful 才算配置可用。
如果提示找不到证书文件,多半是路径写错或文件名大小写不一致。

方式二:用宝塔面板部署

如果服务器上装的是宝塔面板,操作会更直观。
进入面板后依次点击 网站 → 站点设置 → SSL,选择“其他证书”,把证书内容粘贴到“证书(PEM格式)”框,私钥粘贴到“密钥(KEY)”框,保存后打开“强制HTTPS”开关。

粘贴时要注意完整包含 -----BEGIN CERTIFICATE----- 到 -----END CERTIFICATE----- 的全部内容,中间证书一般紧跟在域名证书后面一起粘贴。
保存成功后面板会自动重载 Nginx,不需要手动执行命令。

别忘了放行 443 端口

证书配好但网站打不开,很常见的原因是端口没放行。
需要同时检查两层:

  • 云服务器安全组:在云控制台的安全组入方向规则里,添加允许 TCP 443 端口、来源 0.0.0.0/0 的规则。
  • 系统防火墙:CentOS 系用 firewall-cmd --add-service=https --permanent && firewall-cmd --reload,Ubuntu 系用 ufw allow 443。

只改一处往往不生效,两层都要确认。

验证证书是否真正生效

配置完不要只看面板显示“已部署”,用下面几种方式交叉验证:

  1. 浏览器访问 https://你的域名,地址栏出现锁形图标,点开查看证书有效期和颁发者。
  2. 命令行执行 curl -I https://你的域名,返回 HTTP/2 200 或 HTTP/1.1 200 说明握手成功。
  3. 用在线 SSL 检测工具检查证书链,重点看是否提示“证书链不完整”。出现这个提示时,把中间证书和域名证书合并成一个文件再配置。

几个容易踩的坑

  • 私钥和证书不匹配:报错通常是 key values mismatch,说明上传的证书和私钥不是同一对,重新从原始压缩包取文件。
  • 只部署了域名证书:部分浏览器能打开,但手机端或部分客户端报不受信任,原因是缺少中间证书。
  • 证书过期未续签:免费证书有效期较短,建议在面板或服务商处开启自动续签,并保留续签后的重载动作。
  • 混用 HTTP 资源:页面里引用了 http:// 的图片或脚本,浏览器仍会提示“不安全”,需要把资源地址改成 https:// 或相对路径。

部署 SSL 证书本身不复杂,关键是文件配对正确、端口放行完整、证书链齐全。
按上面的顺序做完,再用浏览器和命令行各验证一次,基本就能稳定启用 HTTPS。

分享到:
上一篇
防火墙和安全组到底差在哪?用端口放行场景讲清两者分工
下一篇
网站启用 HTTPS 的完整操作:从申请证书到 Nginx 跳转验证
1
系统公告

关于香港云优质服务器IP地址更换的通知

尊敬的客户: 因原IP运营商大幅涨价,为避免成本转嫁至用户,我司决定更换IP服务商。本次更换后,您的续费价格将保持不变,且新IP网络质量与服务标准不受影响。新IP已分配至后台,即刻生效(更换的新IP都是香港原生IPv4)。 涉及 IP 段: 45.192.x.x 旧 IP 停用时间: 2026 年 12 月 1 日
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意