Chrome 访问自签名 HTTPS 网站报 ERR_CERT_AUTHORITY_INVALID 时,可通过五种方法解决:一、启用 chrome://flags/#allow-insecure-localhost;二、macOS 钥匙串设证书为始终信任;三、用 mkcert 生成并安装本地受信证书;四、Chrome 证书管理器导入根证书至“受信任的根证书颁发机构”;五、Safari 辅助信任后 Chrome 复用系统信任。

如果您在 Chrome 浏览器中访问使用自签名证书的 HTTPS 网站(如本地开发环境 https://localhost 或 https://127.0.0.1),浏览器会显示 ERR_CERT_AUTHORITY_INVALID 等安全警告。这是因为 Chrome 默认不信任未经公共证书颁发机构(CA)签名的证书。以下是多种可立即生效的信任方法:
一、通过 chrome://flags 启用本地不安全连接支持
该方法仅适用于以 localhost 或 127.0.0.1 为域名的自签名 HTTPS 服务,无需导入证书,操作最快。
1、在 Chrome 地址栏输入:chrome://flags/#allow-insecure-localhost 并回车。
2、在搜索框中输入 allow-insecure-localhost,找到对应实验性功能项。
3、将下拉菜单由 “Default” 改为 Enabled。
4、点击页面右下角的 Relaunch 按钮重启浏览器。
二、将证书导入 macOS 钥匙串并设为完全信任
该方法适用于 macOS 系统,通过系统级根证书信任机制使 Chrome(依赖 macOS Keychain)识别并信任自签名证书。
1、双击下载或生成的证书文件(如 localhost.pem 或 server.crt),自动在“钥匙串访问”中打开。
2、在弹出窗口中选择 系统 钥匙串,点击“添加”。
3、在钥匙串访问中,于左侧边栏选择 系统,在右侧列表中找到刚添加的证书。
4、双击该证书,展开“信任”选项,将 “使用此证书时:” 下拉菜单设为 始终信任。
5、关闭窗口,在弹出提示中输入管理员密码确认更改。
6、完全退出 Chrome(Cmd + Q),重新启动后访问对应 HTTPS 地址。
三、使用 mkcert 工具生成并安装受信本地证书
mkcert 是专为本地开发设计的可信证书生成工具,它创建的证书由本地 CA 签发,并自动注入系统根信任库,Chrome 将无条件接受。
1、在终端中执行:brew install mkcert nss(macOS)或从 https://github.com/FiloSottile/mkcert 下载对应平台二进制文件。
2、运行:mkcert -install,输入管理员密码完成本地根 CA 安装。
3、生成适配多域名的证书,例如:mkcert localhost 127.0.0.1 ::1,将生成 localhost+3.pem 和 localhost+3-key.pem。
4、将 localhost+3.pem 文件用于 Web 服务器的证书配置,私钥使用对应 key 文件。
5、重启 Web 服务及 Chrome 浏览器,访问 https://localhost 不再出现警告。
四、通过 Chrome 内置证书管理器手动导入
该方法绕过系统钥匙串,直接在 Chrome 浏览器级别导入证书至“受信任的根证书颁发机构”,适用于 Windows 或需隔离信任场景。
1、在 Chrome 地址栏输入:chrome://settings/certificates 并回车。
2、切换到 “权威机构” 标签页。
3、点击右下角 “导入” 按钮。
4、在向导中点击“下一步”,再点击“浏览”,选择您的根证书文件(如 rootCA.pem 或 ca.crt)。
5、勾选 “将所有的证书放入下列存储区”,点击“浏览”,选择 “受信任的根证书颁发机构”,确认后完成导入。
6、关闭所有 Chrome 窗口,彻底退出(Mac 上需 Cmd + Q),重新启动并验证访问。
五、利用 Safari 辅助信任(仅限 macOS)
Safari 在 macOS 上与系统钥匙串深度集成,可通过 Safari 先建立信任链,Chrome 随后复用同一信任状态。
1、使用 Safari 打开目标 HTTPS 地址(如 https://192.168.1.100)。
2、点击地址栏左侧锁形图标 → “显示证书” → 勾选 “始终信任” → 关闭窗口并输入管理员密码确认。
3、此时证书已写入“系统”钥匙串且标记为完全信任。
4、完全退出 Chrome(Cmd + Q),重新启动后访问同一地址即可跳过警告。









