【问题标题】:How to let angular use my ssl certificates?如何让 Angular 使用我的 ssl 证书?
【发布时间】:2019-06-04 15:41:07
【问题描述】:

我的 Angular 应用程序不使用我创建的密钥或证书。 我创建了一个目录“ssl”并将两个文件都放在那里。

但我第一次“ng serve”时,angular 创建了自己的键(它是在编译时写在终端中的)。

我如何告诉 Angular 使用我的文件?

根据 Angular 文档,它应该在 angular.json 中完成,但就像我说的,第一个“ng serve”会创建自己的密钥,不要使用我的。

"serve": {
      "builder": "@angular-devkit/build-angular:dev-server",
      "options": {
        "browserTarget": "ssl-test:build",
        "ssl": true,
        "sslCert": "/ssl/server.crt",
        "sslKey": "/ssl/server.key"
      },

应用程序已经在 https 上运行,只是没有我放入 angular.json 的证书。

【问题讨论】:

  • 您是否将 ng serve 用于站点的部署版本?就我而言,我使用 ng build --prod 生成可部署文件,然后使用 IIS 托管。然后我可以在 IIS 中使用 ssl 绑定。
  • 嗨,艾迪,感谢您的回复。我还在 localhost 上开发,所以我还不需要构建,我不知道 IIS 是什么。
  • 看看这个StackOverflow answer。那个OP似乎想知道和你一样的事情。如果这没有帮助,您可以查看 this articlethis article 两者都解释了如何做到这一点。希望对您有所帮助。
  • 嘿纳姆,谢谢你的回复!我的应用程序以 https 运行,只是没有使用正确的证书。所以它不是重复的。我会查看您提供的其他链接,因为您提到的 stackoverflow 答案,我已经尝试过了。

标签: angular ssl ssl-certificate


【解决方案1】:

如果您像这样通过角度 json,则需要将 --ssl 标志添加到您的 ng serve cmd:

ng serve --ssl --host "0.0.0.0"

【讨论】:

  • 感谢您的回答,但这已经在我的问题中提到了 - 在我的服务部分的角度 json 中。我的问题甚至说应用程序在 https 上运行,只是使用了错误的证书。你的评论没有回答我的问题。祝你有美好的一天
【解决方案2】:

您可以尝试将其添加到您的 package.json 文件中 在 scripts 属性下,将其添加到 start 下。

"scripts": {
  "ng": "ng",
  "start": "ng serve --open --ssl true --ssl-cert <path of your ssl cert in source file> --ssl-key <path of your ssl key in source file>,

 ........

并且每次你要启动你的应用程序时,你都可以运行脚本

npm run start

【讨论】:

  • 嗨,卡尔,感谢您帮助我。不幸的是,这与将证书放在 angular.json 中是一样的。该应用程序以 https 身份运行,但再次使用错误的证书。似乎那些 --ssl cert 和 key 命令被忽略了。
  • 是的,我也有同样的问题。我将它们放入 angular.json 但是当我在浏览器中检查证书时,它是从 angular 生成的。
猜你喜欢
  • 2011-01-10
  • 2010-09-09
  • 1970-01-01
  • 2020-01-05
  • 1970-01-01
  • 2018-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多