我一直在努力https使用自签名 SSL 证书在我的本地网站上工作。
我遵循了所有必要的指示:
- 按照以下指南生成 .crt 和 .key 文件https://devcenter.heroku.com/articles/ssl-certificate-self
配置 nginx 以使用 ssl
listen 443; ssl on; ssl_certificate /usr/local/etc/nginx/ssl/server.crt; ssl_certificate_key /usr/local/etc/nginx/ssl/server.key;
- 将生成的证书添加到 mac 的钥匙串中,并将其选中为“始终信任”
但它没有使 https 工作,我一直收到 Chrome(或其他浏览器)的“你的连接不是私人的“
mac OS Sierra 10.12.6,通过 homebrew 安装 nginx
我做错了什么?
答案1
对于 CHROME 58 及以上版本,必须正确生成自签名证书。请参阅https://stackoverflow.com/a/42917227/3930651。
答案2
我查看了 Chrome 开发工具中的“安全”选项卡,结果发现 Chrome 要求 subjectAlternativeName 与您的域名匹配(而不仅仅是通用名称)
以下解决方案对我有用使用 openssl 生成可在 Chrome 58 中使用的自签名证书