最近远程协助用户解决了浏览器的 NET::ERR_CERT_DATE_INVALID 异常,过程中了看到了这篇总结的不错的英文文章,遂翻译了与大家共享。
支持了 HTTPS 的站点(原文为 安装了 SSL 证书)会让人用起来更安心。当浏览器提醒 NET::ERR_CERT_DATE_INVALID 错误时,则表示证书出现了问题,浏览会通过该提示阻止用户访问该站点。所以我们需要解决这个问题。
通常情况,不管是网站所有者还是用户遇到这个问题都会比较闹心。
好在 NET::ERR_CERT_DATE_INVALID 这个问题非常常见,有很多备选的解决方案供我们选择,一一尝试之后,通常都能够解决这一问题。
本文,我们会讲解 NET::ERR_CERT_DATE_INVALID 是什么,在不同浏览器中可能的呈现方式是什么样的。然后我们会给出可供尝试的解决方法。最后,再介绍两个特定案例。
下面我们进入正题。
什么是NET::ERR_CERT_DATE_INVALID错误?NET::ERR_CERT_DATE_INVALID 错误通常是和 你的连接不是私密连接相关联,基本上当我们遇到这个问题时,后者才是我们看到的主要提示。比如 Chrome 浏览器下就会给出该提示,不过也有浏览器的提示不一样,如火狐:
Firefox 下 NET::ERR_CERT_DATE_INVALID 错误的提示
大多数情况,这个错误并不能真正阻止我们访问站点,我们可以接受风险并继续访问,不过并不建议大家这么做。
虽然 NET::ERR_CERT_DATE_INVALID 错误并不罕见,并且可以很容易地修复,不过它表示当前访问的站点可能存在威胁。
通常会有以下几种原因导致这一错误:
- 用户的电脑有问题,比如电脑设置、*毒软件或者网络连接。
- 访问网站使用的浏览器有问题,可能是设置问题,也可能是浏览器和所使用的 SSL 证书不兼容。
- 也可能证书本身确实有问题,如题设错误中所对应的是证书过期了。
不管是什么原因导致的,这个问题都会影响使用,所以你肯定想要快速的修复它。看到这个错误也会让用户怀疑你的网站是否安全。
NET::ERR_CERT_DATE_INVALID在不同浏览器下的提示我们通常会在 Chrome 浏览器下遇到如题中 NET::ERR_CERT_DATE_INVALID 样的错误信息。除此之外,其他浏览器也有各自不同的错误提示。并且不同的操作系统看到的提示可能也不相同。
下面我们来看几个错误提示示例。
Google Chrome 浏览器在 Chrome 中会指出 你的连接不是私密的。可以通过点击 高级(Advanced),选择继续访问该站点,但是这样会有风险:
Chrome 下的 NET::ERR_CERT_DATE_INVALID 错误
Chrome 下还有其他和 SSL 证书相关的错误提示,如下:
- NET::ERR_CERT_AUTHORITY_INVALID
- NET::ERR_CERT_COMMON_NAME_INVALID
- NET::ERR_CERT_WEAK_SIGNATURE_ALGORITHM
- NTE::ERR_CERTIFICATE_TRANSPARENCY_REQUIRED
- SSL CERTIFICATE ERROR
看到这一类错误时,我们至少要知道可能是和 SSL 证书有关。特定的错误码有利于我们定位具体问题。
Firefox 火狐浏览器火狐浏览器下遇到安全警告时,会通过明黄色的边框给出提示。和 Chrome 一样,我们也可以忽略该提示,通过点击 高级按钮,接受风险并继续访问。
火狐下的 NET::ERR_CERT_DATE_INVALID 错误
点击 高级也会给出更多错误相关的信息,比如图中的 SEC_ERROR_EXPIRED_CERTIFICATE,有可能是下面其他几种:
- SEC_ERROR_UNKNOWN_ISSUER
- SSL_ERROR_RX_MALFORMED_HANDSHAKE
- MOZILLA_PKIX_ERROR_KEY_PINNING_FAILURE
- SEC_ERROR_REUSED_ISSUER_AND_SERIAL
这一警告包含特定的错误码,这样我们能够更快地定位到根本问题所在。
微软的 Edge 浏览器Edge 浏览器的错误基本上 Chrome 中展示的相同。不过,Edge 下的错误提示可能会包括 SSL 证书过期了多久:
歪马注:Chrome 也有过期多久的提示。