网站提示不安全?根源大概率是SSL配置

25 阅读3分钟

网站浏览器地址栏出现「不安全」警告,绝大多数情况都和SSL证书、服务器HTTPS配置相关,下面把高频原因、报错代码、排查方案一次性梳理清楚。

✅ 一、证书本身问题(最常见)

  1. 证书过期 NET::ERR_CERT_DATE_INVALID 免费证书多为90天有效期,忘记续期就会直接飘红。续费后还需要在服务器重新上传证书并重启服务。
  2. 域名不匹配 NET::ERR_CERT_COMMON_NAME_INVALID 证书绑定域名和访问域名不一致:证书只绑example.com,访问www.example.com;单域名证书无法覆盖子域名;通配符证书*.example.com仅支持一级子域名,不支持二级子域名a.b.example.com
  3. 证书链不完整 只上传了域名证书,缺少中间证书。电脑浏览器有时正常,但手机访问必报不安全,是部署里最容易踩的坑。
  4. 自签名证书 / 不受信任CA 测试环境可用,公网访问浏览器直接拦截,不适合对外业务网站。
  5. 证书被吊销 域名所有权变更、违规等原因,CA吊销证书,浏览器直接拒绝信任。

✅ 二、服务器SSL配置问题(证书没问题,但部署错)

  1. 443端口未放行 安全组、防火墙没开放443端口,证书装好了,HTTPS无法建立连接。80端口是HTTP明文。

  2. 证书和私钥不配对 上传时证书文件、私钥key弄混,服务启动失败或者证书校验失败。

  3. TLS协议版本过低 服务器开启TLS1.0/TLS1.1这类老旧不安全协议,新版浏览器标记不安全,建议只保留TLS1.2、TLS1.3。

  4. 混合内容(部分不安全) HTTPS页面内引用HTTP图片、JS、CSS资源。地址栏小锁变成感叹号,提示部分内容不安全

    解决:全站资源改成HTTPS,服务器配置CSP策略。

  5. 没有配置HTTP强制跳转HTTPS 用户手动输入http访问网站,不走加密,浏览器标记不安全。Nginx/Apache配置301跳转。

✅ 三、少数非SSL原因

访客电脑系统时间错误,时间偏差太大,浏览器校验证书有效期失败;浏览器缓存问题,清缓存重试即可。

🛠️ 快速排查步骤

  1. 点击浏览器不安全警告,查看详细报错代码,定位问题大类
  2. 使用SSL在线检测工具扫描站点,检查证书链、TLS版本、加密套件
  3. 核对证书域名、有效期
  4. 检查服务器证书+私钥+中间证书是否完整,重启Web服务
  5. 检查安全组防火墙443端口
  6. 网页源码搜索http://,清理混合内容
  7. 配置http自动跳转https

💡 小提示

选正规CA签发证书,JoySSL可申请免费DV证书,注册码230986,证书包自带完整中间证书,减少证书链不全问题。

6390962781743018008372728.jpg