Se stai eseguendo la tua app Angular localmente, viene servita utilizzando HTTP per impostazione predefinita. In alcuni casi è necessario che la tua app Angular sia servita tramite https per integrare un servizio come Azure B2C o simile. Questo articolo spiega come utilizzare la CLI Angular per servire un’app Web Angular su https nello sviluppo locale. Vediamo come è possibile ottenere questo risultato in Angular.
Utilizzo di HTTPS in fase di sviluppo
Per utilizzare https localmente, dobbiamo fare quanto segue:
- Genera un’autorità di certificazione locale e un certificato SSL
- Imposta i certificati quando servi Angular
- Prova!
Certificato SSL personalizzato
È necessario creare un’autorità di certificazione locale e un certificato SSL e impostare SSL_CERT_FILE
e SSL_KEY_FILE
sui file generati.
Generazione di un certificato SSL
Come primo passo, dovresti generare un’autorità di certificazione locale e un certificato SSL per lo sviluppo locale.
- Hai bisogno di un gestore di pacchetti per installare mkcert:
- Windows: usa chocolatey .
- Installa mkcert .
- Crea una CA attendibile localmente con
mkcert -install
. - Genera un certificato SSL con
mkcert localhost
.
Imposta il certificato SSL personalizzato
Per servire un’app Angular localmente con SSL dobbiamo utilizzare le opzioni --ssl
, --ssl-key
e --ssl-cert
insieme a ng serve
. Pertanto, dopo aver generato l’autorità di certificazione locale e il certificato SSL, dobbiamo impostare le variabili di ambiente sslKey
e sslCert
sul percorso del certificato e dei file chiave. ssl
deve essere anche vero.
ng serve -o -ssl true --sslKey {KEY_PATH} --sslCert {CERT_PATH}
Le variabili CERT-PATH
e KEY-PATH
sono i percorsi dei file generati. Alla fine, impostiamo il comando come npm start
script e l’applicazione viene eseguita su HTTPS.
"scripts": {
"ng serve --ssl true --ssl-key {KEY-PATH} --ssl-cert {CERT-PATH}"
}
ABILITIAMO SSL
- Per abilitare HTTPS localmente, è necessario creare e impostare nell’ambiente l’autorità di certificazione locale e il certificato SSL.
- Meglio aggiornare lo script
npm start
script .