宝塔面板安装SSL证书,就是在宝塔面板的可视化管理界面中为网站域名配置并部署由证书颁发机构签发的SSL数字证书,使网站启用HTTPS加密访问。
安装前准备
已安装并正常登录宝塔面板,且已添加需要部署证书的站点。
域名已解析到当前服务器公网IP,解析生效后才能完成证书申请与验证。

如果使用云平台证书,需提前下载证书文件,通常包含证书文件(
.pem或.crt)和私钥文件(.key)。如果使用Let's Encrypt免费证书,需确认站点根目录可写,80端口未被占用或拦截。
服务器防火墙和安全组需放行443端口,部署后HTTPS才能正常访问。
获取SSL证书的常见方式
在宝塔面板中直接申请Let's Encrypt免费证书。方式二:在阿里云、腾讯云等云平台申请免费证书后,下载Nginx或Apache格式证书。方式三:购买商业证书后,下载对应服务器类型的证书文件。
在宝塔面板直接申请Let's Encrypt证书
登录宝塔面板后台,进入“网站”模块。
在网站列表中找到目标域名,点击右侧“设置”。
在站点设置页面左侧菜单中点击“SSL”。
选择“Let's Encrypt”标签页。
在“验证方式”中选择“文件验证”或“DNS验证”,文件验证要求域名解析到当前服务器,并确保网站可访问;DNS验证需要到域名解析处添加TXT记录。
在“邮箱”处填写接收证书到期提醒的邮箱地址。
勾选需要申请证书的域名,通常包括主域名和www域名。
点击“申请”按钮。
等待系统自动完成域名验证、证书签发和部署,成功后页面会显示证书到期时间。
打开“强制HTTPS”开关,使HTTP自动跳转HTTPS。
如果申请失败,可查看面板日志,常见原因包括域名未解析、80端口不通、文件验证路径无法访问、DNS记录未生效等。
手动上传已购买的SSL证书
如果没有在宝塔面板中申请证书,而是从其他平台下载证书,需要手动上传。
登录宝塔面板,进入“网站”列表。
点击目标站点右侧“设置”。
左侧点击“SSL”。
切换到“其他证书”标签页。
打开下载的证书文件,通常压缩包内包含两个文件:
私钥文件,文件名可能为“域名.key”或“private.key”。
证书文件,文件名可能为“域名.pem”“域名.crt”“fullchain.pem”或“public.pem”。
使用纯文本编辑器打开私钥文件,复制全部内容,包括“-----BEGIN PRIVATE KEY-----”和“-----END PRIVATE KEY-----”这两行,粘贴到宝塔面板“密钥(KEY)”文本框中。
使用纯文本编辑器打开证书文件,复制全部内容,包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”部分,若证书文件包含多段BEGIN CERTIFICATE到END CERTIFICATE,属于证书链,全部复制粘贴到“证书(PEM格式)”文本框中。
点击“保存并启用证书”。
确认页面提示保存成功。
打开“强制HTTPS”开关。
注意:密钥框只能粘贴私钥,证书框只能粘贴公钥证书,粘贴顺序不要颠倒,私钥内容不应出现在证书框,证书内容也不应放入密钥框,如果证书链不包含根证书,但一般需要包含中间证书,建议使用“fullchain.pem”文件。
部署后检查站点配置
宝塔面板会自动修改Nginx或Apache配置文件,对于Nginx站点,通常会生成类似如下配置:
server{
listen443sslhttp2;
server_nameexample.comwww.example.com;
ssl_certificate/www/server/panel/vhost/cert/example.com/fullchain.pem;
ssl_certificate_key/www/server/panel/vhost/cert/example.com/privkey.pem;
ssl_protocolsTLSv1.2TLSv1.3;
ssl_ciphersHIGH:!aNULL:!MD5;
root/www/wwwroot/example.com;
indexindex.htmlindex.php;
}如果使用Apache,配置中会包含类似:
SSLEngineon SSLCertificateFile/www/server/panel/vhost/cert/example.com/fullchain.pem SSLCertificateKeyFile/www/server/panel/vhost/cert/example.com/privkey.pem
可以进入“网站”列表,点击目标站点的“配置文件”查看确认,若发现证书路径异常,可回到SSL页面重新保存一次。
开启HTTP跳转HTTPS
在SSL页面中有一个“强制HTTPS”开关,开启后,宝塔会在站点配置中加入重定向规则,Nginx下通常为:
if($server_port!~443){
rewrite^(.*)$https://$host$1permanent;
}或使用301跳转,Apache下会生成Rewrite规则,将HTTP请求重定向到HTTPS,开启后使用浏览器访问http://域名,应自动跳转到https://域名,如果跳转失败,先检查站点配置中是否出现重复跳转规则,或是否被CDN、反向代理拦截。
验证证书是否安装成功
打开浏览器,地址栏输入
https://域名,确认能正常打开网站。点击地址栏旁边的锁形图标,查看证书信息,确认证书域名与当前访问域名一致,证书状态为有效。
查看证书链是否完整,如果浏览器提示“证书不受信任”或“证书链不完整”,说明中间证书缺失,需要重新下载完整证书链文件并上传。
使用在线SSL检测工具,输入域名进行检测,可以查看证书有效期、协议支持、加密套件和证书链详情。
证书续期与更新
Let's Encrypt免费证书有效期为90天,宝塔面板会通过计划任务自动续期,进入“计划任务”,查看是否已有“SSL证书续签”任务,保持任务为开启状态,自动续期会扫描面板中部署的Let's Encrypt证书,对即将到期的证书进行续签并重新部署,手动续期可以进入站点“SSL”页面,在Let's Encrypt标签页中点击“续签”按钮。
其他平台申请的证书,到期前需要重新下载新证书文件,并按照手动上传步骤替换旧证书,替换后需要重新保存并启用证书,必要时重启Nginx或Apache服务使配置生效。
常见注意事项
私钥文件必须妥善保管,不要复制到公共仓库或聊天记录中。
上传证书时使用纯文本编辑器,避免使用Word等软件复制,防止引入不可见字符。
部署证书前,确认域名解析已经生效,否则Let's Encrypt验证会失败。
如果服务器使用CDN,需要在CDN侧也配置HTTPS证书,并注意回源协议设置。
如果网站使用宝塔的“SSL”页面启用证书,但浏览器仍然提示不安全,检查证书是否过期、域名是否匹配、是否存在混合内容。
如果修改网站源码中的资源链接为HTTPS,或使用协议相对路径“//”,可避免混合内容问题。
如果证书粘贴后保存失败,可以清理浏览器缓存并重新登录宝塔面板再试。
部分云平台免费证书仅支持单域名,如需泛域名可选择商业证书或Let's Encrypt DNS验证泛域名证书。
常见错误处理
错误:证书和私钥不匹配,表现为Nginx或Apache启动失败,或浏览器提示证书无效,处理:确认密钥文件和证书文件来自同一申请订单,若无法确认,可重新生成证书或重新下载。
错误:证书链不完整,处理:上传证书时使用包含中间证书的“fullchain.pem”文件,或在证书框内按“站点证书 + 中间证书”的顺序粘贴。
错误:Let's Encrypt申请时提示“验证失败”,处理:检查域名解析是否生效,检查站点根目录对应路径是否可写入,检查80端口是否被其他服务占用,检查服务器安全组和防火墙是否放行80端口。
错误:开启强制HTTPS后网站打不开,处理:确认443端口已放行,确认证书部署无报错,确认CDN或云安全产品没有阻断443端口,检查站点配置中是否出现重复或错误的跳转规则。
错误:浏览器提示“此网站无法提供安全连接”,处理:查看证书是否过期,查看服务器时间是否正确,查看证书是否被吊销,查看站点是否监听443端口。