Ausgabe
Ich versuche, eine Reaktions-App zu hosten, die ich erstellt und lokal mit der Facebook-Boilerplate getestet habe.
Die Client-App interagiert mit einer API, die ich mit node.js erstellt habe und mit der ich keine Probleme beim Einrichten einer sicheren Verbindung hatte (mit einem node.js-Client, der mein SSL-Zertifikat zum Testen sendet).
Ich stoße jedoch auf Schwierigkeiten, wenn es darum geht, mit „react“ mein SSL-Zertifikat anstelle eines selbstsignierten Zertifikats zu senden, was dazu führt, dass ich mit Chrome auf diesen Fehler stoße und versuche, auf https://example.net:3000 zuzugreifen :
Ihre Verbindung ist nicht privat (NET:ERR_CERT_AUTHORITY_INVALID)
Die Dokumentation hat mir nicht ganz weitergeholfen:
Beachten Sie, dass der Server ein selbstsigniertes Zertifikat verwendet, sodass Ihr Webbrowser beim Zugriff auf die Seite mit ziemlicher Sicherheit eine Warnung anzeigt.
https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md#using-https-in-development
Wie kann ich mein eigenes SSL-Zertifikat (das ich bereits in einer anderen App auf meiner Domain verwende und wie ein Zauber funktioniert) anstelle dieses selbstsignierten verwenden? Habe ich etwas verpasst ?
Lösung
Ich konnte ein lokales Zertifikat zum Laufen bringen, ohne die webpack-dev-server
Dateien zu ändern react-scripts
3.4.1
(technisch hinzugefügt, 3.4.0
aber ich hatte einige – wahrscheinlich nicht verwandte – Probleme). Ich habe diese beiden Umgebungsvariablen zu meinem hinzugefügt .env.development
:
SSL_CRT_FILE=.cert/server.crt
SSL_KEY_FILE=.cert/server.key
Anmerkungen:
.cert
ist ein Ordner, den ich im Stammverzeichnis meines Projekts erstellt habe- Mein Skript, das das SSL-Zertifikat generiert
- Offizielle Dokumentation zu diesen beiden Umgebungsvariablen
Beantwortet von – Andi
Antwort geprüft von – Mildred Charles (FixError Admin)