浏览器弹出“您的网页连接不是私密连接”或者“此网站无法提供安全连接”,点开详情写着 NET::ERR_CERT_DATE_INVALID,走丢站再一看地址栏,解决https 前面多了个红色三角。受信你心里咯噔一下:这网站我天天用,任网怎么突然就“走丢”了?网页别急,它没丢,走丢站只是解决浏览器不认它了。
上周我帮一个做外贸的受信朋友处理过一模一样的事。他公司官网突然打不开,任网Chrome 报错“证书已过期”。网页他第一反应是走丢站服务器崩了,打电话给托管商骂了十分钟。解决结果人家后台一看,受信网站运行正常,任网只是 SSL 证书昨天到期,自动续签脚本没跑起来。续签之后,一切恢复。整个过程不到二十分钟,但耽误了他半天生意。
受信任网站“走丢”,九成以上不是网站本身消失,而是信任链断了。浏览器判断一个网站是否可信,靠的是证书颁发机构(CA)签发的 SSL 证书。证书有有效期,一般 90 天到一年。过期、域名不匹配、证书链不完整、系统时间错误,都会让浏览器直接翻脸。
你可能会问:那我访问银行、政府网站怎么从来没出过事?因为大机构有专人盯着证书到期日,提前续签。小网站、个人博客、内部系统,往往没人管这事。我见过一个公司内部 OA 系统,证书过期了两年没人发现,员工每次访问都要手动点“继续前往”,点了两年。
遇到这种情况,先别急着骂网站。按下面几步走,基本能定位问题。
第一步,看错误代码。Chrome 按 F12 打开开发者工具,切到 Security 面板,会明确告诉你证书哪里不对。是过期、是域名不匹配、还是颁发者不受信任。Firefox 点地址栏的锁图标,更多信息里也能看到。
第二步,检查系统时间。这个听起来很蠢,但真有人中招。Windows 时间同步失败,日期跑到 2010 年,浏览器会认为所有证书都“还没生效”或者“已过期”。右键任务栏时间,立即同步一次,问题可能就没了。
第三步,确认是不是你一个人打不开。用手机流量访问同一个网址,或者让同事试试。如果别人正常,只有你不行,大概率是你本地网络、公司防火墙或者杀毒软件在中间做了 HTTPS 拦截。有些企业安全软件会替换证书,浏览器不认这个“中间人”,就会报错。
第四步,如果是网站主人的问题,联系他们。普通用户能做的到此为止。续签证书、补全证书链、更新服务器配置,这些需要后台权限。你可以截图错误页面发给他们,附上错误代码,比说“网站打不开”有用得多。
我自己维护过几个小站,说句实在话:证书过期这事,防不胜防。Let's Encrypt 免费证书三个月一续,自动化脚本偶尔会因为服务器重启、DNS 解析波动、API 限流而失败。我现在的做法是,在手机日历里设一个到期前七天的提醒,同时用 UptimeRobot 这类监控服务,一旦证书剩余天数少于 14 天就发邮件。双重保险,比单纯依赖脚本靠谱。
还有一类情况更隐蔽:网站本身没走丢,但 CDN 节点证书过期了。你访问的时候,DNS 把你解析到某个边缘节点,那个节点的证书坏了,你就打不开。刷新几次,换到另一个节点,又正常了。这种间歇性故障最难查,只能联系 CDN 服务商刷新证书。
最后说一个反直觉的判断:如果浏览器只是警告“证书不受信任”,但页面还能强行访问,而你又确定这个网站没问题——比如是公司内部系统——那大概率是自签名证书或者内部 CA 没被系统信任。这种情况不要在网上随便搜“忽略证书错误”的教程去改浏览器设置,那会降低你所有网站的安全级别。正确做法是让 IT 部门把内部根证书装到你的系统信任库里。
网站走丢不可怕,怕的是你不知道它为什么走丢。下次再看到红色警告,先看错误代码,再查系统时间,然后确认是不是只有你一个人。这三步走完,八成问题已经有了方向。