1. ホーム
  2. angular

[解決済み] angular-cli が HTTPS で ng serve するようにする。

2022-10-05 23:04:18

質問

下記は何もしていないようです。

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


証明書と鍵をデフォルトのsslディレクトリに提供して作成しても、まだ何も起こりません。

次のように表示されます。 ng server は完全に無視され --ssl パラメータを無視して NG Live Development Server is running on http://localhost:4200.

どのように解決するのですか?

Angular CLI 6+

私は自分のプロジェクトを更新したので、この回答も更新できると思いました。

これで、以下のようにangular.jsonファイルに鍵と証明書のパスを入れることになります。

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

そして、実行します。

ng serve --ssl

もし、デフォルトでSSLを有効にしたいのであれば "ssl": trueを指定します。 オプションのすぐ下に sslKey sslCert .

angular.jsonのスキーマは以下の場所で見ることができます。 Angular CLI ドキュメント .

Angular CLI 1.0.0+のための古い回答です。

Angular-CLIは、SSLオプションで動作するようになりました。あなたが指摘したように、コマンドで使用したいキーと証明書を手動で選択することができます。

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

もし鍵や証明書のデフォルトパスを設定したい場合は、.angular-cli.jsonファイルのDefaultsセクションを適宜変更してください。

{
    "$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

もし、デフォルトでSSLを有効にしたいのであれば "ssl": trueを指定します。 オプションのすぐ下に sslKey sslCert .