Получить angular-cli для ng служить по HTTPS

следующее, похоже, ничего не делает.

ng serve --ssl true --ssl-key <key-path> --ssl-cert <cert-path>

создание сертификата и ключа, предоставив их в каталоге ssl по умолчанию по-прежнему ничего не делает. Похоже на ng server полностью игнорируя и NG Live Development Server is running on http://localhost:4200.

4 ответов


как указано в предыдущем комментарии, Angular-CLI теперь работает с параметрами SSL. Как вы уже отметили, Вы можете вручную выбрать, какой ключ и сертификат вы хотите использовать с командой:

ng serve --ssl --ssl-key <key-path> --ssl-cert <cert-path>

Если вы хотите установить путь по умолчанию для вашего ключа и сертификата, вы можете войти в свой .угловой-cli.файл json отрегулируйте раздел по умолчанию соответственно:

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  ... 
  "defaults": {
    ...
    "serve": {
      "sslKey": "<relative path from .angular-cli.json>/server.key",
      "sslCert": "<relative path from .angular-cli.json>/server.crt"
    },
    ...
  },
  ...
}

и тогда вы можете запустить:

ng serve --ssl

JFYI, в Angular6 вы должны поместить conf в опции (в angular.в JSON) :

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

чтобы дополнить это решение, если вы когда-нибудь задумывались, как создать ключ и сертификат для localhost, вот отличная пошаговая статья об этом:

https://medium.freecodecamp.org/how-to-get-https-working-on-your-local-development-environment-in-5-minutes-7af615770eec


вы правы. Текущая реализация не принимает параметры конфигурации ssl под учетной записью. Я создал pull-запрос что устраняет эту проблему. Однако на момент написания этой книги он еще не был слит с мастером.