主机名/IP 与证书的替代名称不匹配:主机:本地主机。不在证书的替代名称中:DNS:*.herokuapp.com, DNS:herokuapp.com

Nud*_*dge 11 heroku session-cookies node.js express next.js

我有一个 api 创建并托管在Heroku. 我的网络应用程序在本地主机上运行。我正在NextJS为我的应用程序使用。我可以通过运行在localhost. 我有一个 api 来检查 cookie 是否可用,我正在我的应用程序文件的getInitialProps方法中调用 api,这是框架的入口点。如果我评论该 api 调用代码,那么我不会收到任何错误,但是我需要检查 cookie 是否存在,所以调用该代码会给出一个错误提示_app.jsNextJS

Hostname/IP does not match certificate's altnames: Host: localhost. is not in the cert's altnames: DNS:*.herokuapp.com, DNS:herokuapp.com
Run Code Online (Sandbox Code Playgroud)

还有我cookie,当我登录不保存在浏览器中。它运行良好,postman所以从我的 api 方面没有问题,我可以在邮递员中看到 cookie。我确实在我的 NodeJS 应用程序中设置了以下内容

app.set("trust proxy", true);
Run Code Online (Sandbox Code Playgroud)

cookie-session在我的express Nodejs应用程序中使用库

小智 -1

阅读这篇文章: https: //devcenter.heroku.com/articles/ssl

这是关于安装证书的。对我来说,看起来只是证书被签名了localhost。浏览器会拒绝它,因为您通过另一个域名访问该网站。

所以你必须自签名证书并上传,或者购买受信任的证书。