如何为localhost创建有效SSL证书?解决NET::ERR_CERT_COMMON_NAME_INVALID错误
解决localhost SSL证书NET::ERR_CERT_COMMON_NAME_INVALID问题
问题根源不是localhost不是FQDN,而是现在主流浏览器要求证书必须包含**Subject Alternative Name(SAN)**字段,仅设置Common Name已经不满足验证要求了。按以下步骤解决:
- 打开XAMPP Apache配置目录下的
openssl.cnf文件,路径为C:\xampp\apache\conf\openssl.cnf - 找到
[ v3_req ]区块(如果找不到就找[ v3_ca ]),在区块内添加一行:
(只需要localhost的话,写subjectAltName = DNS:localhost, IP:127.0.0.1subjectAltName = DNS:localhost即可) - 保存文件后,重新运行
C:\xampp\apache\makecert.bat生成新证书,Common Name依旧填localhost - 把新生成的证书替换到Apache的SSL配置里(如果之前已经配置过证书路径),然后重启Apache服务
- 最后将生成的根证书(一般在
C:\xampp\apache\conf目录下的.crt文件)导入浏览器的受信任根证书颁发机构列表,完成后浏览器就不会再报错了
内容的提问来源于stack exchange,提问作者wuschel
相关产品推荐
相关产品推荐

