net::err_cert_authority_invalid错误源于证书颁发机构不可信,解决方法包括:一、补全中间证书链;二、导入自签名或私有ca根证书至系统信任库;三、换用公共可信ca证书(如let’s encrypt);四、开发时临时禁用chrome证书验证;五、检查证书是否吊销或使用弱签名算法。

如果您在浏览器中访问 HTTPS 网站时遇到 net::ERR_CERT_AUTHORITY_INVALID 错误,说明浏览器拒绝建立安全连接,原因是无法验证服务器证书的颁发机构可信性。以下是针对该错误的多种处理方法:
一、确认并安装缺失的中间证书
证书链不完整是导致该错误的高频原因。浏览器需从服务器证书逐级向上验证至受信任根证书;若中间证书未随服务器证书一同发送,验证即中断。
1、使用在线工具(如 SSL Labs 的 SSL Test)输入域名,检查证书链完整性报告。
2、登录服务器,查看当前部署的证书文件是否仅包含站点证书,而缺少中间证书内容。
3、从证书颁发机构官网下载对应中间证书(如 Let’s Encrypt 的 ISRG Root X1 + R3 中间证书),将其与站点证书合并为单一 PEM 文件(中间证书置于站点证书之后)。
4、重启 Web 服务(如 Nginx 或 Apache),确保配置中 ssl_certificate 指向合并后的 PEM 文件。
二、将自签名或私有 CA 根证书导入系统信任库
开发或内网环境常使用自签名证书或企业私有 CA 颁发的证书,此类证书默认不在操作系统或浏览器信任列表中,需手动注入信任锚点。
1、导出根证书(.crt 或 .pem 格式),确保其为自签名且无有效期问题。
2、在 Windows 上:双击证书文件 → 选择“安装证书” → 存储位置选“本地计算机” → 存储位置选“受信任的根证书颁发机构” → 完成安装。
3、在 macOS 上:双击证书 → 在钥匙串访问中打开 → 将证书拖入“系统”钥匙串 → 右键证书 → “显示简介” → 展开“信任” → “当使用此证书时”设为“始终信任”。
4、在 Linux(Debian/Ubuntu)上:将证书复制到 /usr/local/share/ca-certificates/,运行 sudo update-ca-certificates。
三、更换为公共可信 CA 颁发的证书
生产环境必须使用由主流浏览器预置信任的证书颁发机构所签发的证书,否则所有终端用户均会遭遇该错误,不可通过客户端绕过解决。
1、申请免费证书:访问 https://letsencrypt.org,使用 Certbot 工具自动化获取和部署 DV 证书。
2、验证域名控制权:Certbot 自动完成 HTTP-01 或 DNS-01 挑战,确保域名解析指向当前服务器。
3、部署证书后,检查 Nginx/Apache 配置中 ssl_certificate 和 ssl_certificate_key 路径是否正确指向 fullchain.pem 和 privkey.pem。
4、执行配置语法检查(如 nginx -t)并重载服务(systemctl reload nginx)。
四、临时禁用 Chrome 证书验证(仅限本地开发)
该方法绕过浏览器内置证书校验逻辑,适用于调试阶段快速验证业务逻辑,但严禁用于任何真实用户流量或公网环境。
1、关闭所有 Chrome 进程(包括后台任务)。
2、右键 Chrome 快捷方式 → 属性 → “目标”末尾添加空格后追加:--test-type --ignore-certificate-errors。
3、以该快捷方式启动 Chrome,地址栏右上角将显示黄色三角形提示“受保护的浏览已停用”。
4、访问目标 HTTPS 地址,确认页面资源可正常加载且 Network 面板不再报 net::ERR_CERT_AUTHORITY_INVALID。
五、检查证书吊销状态与签名算法强度
即使证书由可信 CA 签发,若被主动吊销或使用弱签名算法(如 SHA-1),浏览器仍会触发该错误,因其已丧失法律与技术有效性。
1、在 Chrome 中点击地址栏锁图标 → “连接是安全的” → “证书有效” → 查看“证书吊销状态”,确认显示“未吊销”。
2、在证书详情页的“详细信息”标签中,查找“签名算法”,排除 sha1WithRSAEncryption 等已淘汰算法。
3、若发现吊销或弱算法,立即联系原 CA 申请新证书,并确保新证书使用 SHA-256 或更高强度签名。
4、部署新证书后,使用 OpenSSL 命令验证:openssl x509 -in your.crt -text -noout | grep "Signature Algorithm"。











