javascript - 对前端和后端使用相同的 mkcert 证书可以吗?

标签 javascript ssl https ssl-certificate vite

我正在开发一个 web 应用程序,它在我的本地测试环境的前端使用 vite 以及一个单独的 API 后端。
我用了mkcert生成本地开发证书并将其用于后端。
我的问题是,对于我的前端开发环境,我也可以使用证书,如 vite 配置中所示:

server: {
  https: {
    key: fs.readFileSync('key.pem'),
    cert: fs.readFileSync('cert.pem'),
  },
  proxy: {
    '/v1': {
      target: 'https://127.0.0.1:8080'
    }
  }
}
我的问题是:我可以为我的后端和前端服务器使用相同的生成证书( key.pemcert.pem )吗?它似乎工作正常,但我不确定这会产生什么影响。
我生成了我的 mkcert证书使用以下命令:
mkcert localhost 127.0.0.1 ::1 192.168.1.96

最佳答案

简短回答:是的,您可以

解释:
证书不会区分“前端”或“后端”的东西。
它仅“采用”创建时给出的 FQDN,并且证书通常可用于单个完全限定域名 (FQDN),但它超出了此问题的范围。
我的意思是,如果您只为 127.0.0.1 创建证书你尝试从 192.168.1.96 加载它,您将看到证书无效。
在您的情况下,当您为本地网络 IP 和公共(public) IP 创建证书时,无论您从 localhost 或 192.168.1.96 加载证书,证书都是有效的。

关于javascript - 对前端和后端使用相同的 mkcert 证书可以吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71370419/

相关文章:

javascript - slider 每次滑动不超过一次迭代 (JavaScript)

javascript - 使用 ng-click 通过更改 <i> 元素来切换复选框

javascript - Angular 2 选择带有 formControlName 的标签不起作用

android - Heroku 不验证证书请求,为什么?

c# - 在 Ubuntu 上禁用证书验证

javascript - 如何将此 html 脚本应用到 jQuery 中?

ssl - 双层反向代理如何通过无效的 SSL 证书?

c++ - 如何使 OpenSSL 使用 http 而不是 https?

java - netty writeAndFlush https 数据报未得到响应

python - 如何为作为 Kubernetes 容器运行的 Flask HTTP 服务器实现 HTTPS 支持