Setup (https) SSL auf localhost für meteor Entwicklung
Wie erstellen Sie ein selbst signiertes SSL-Zertifikat zu verwenden, auf dem lokalen server auf dem mac 10.9?
Ich verlange, dass mein localhost dient als https://localhost
Ich bin mit der linkedin-API. Die Funktion erfordert ssl auf dem lokalen host, wird hier erklärt.
https://developer.linkedin.com/documents/exchange-jsapi-tokens-rest-api-oauth-tokens
In kurzen, linkedin sendet der client ein bearer-token, nachdem der AUFTRAGGEBER bevollmächtigt meine app auf Ihre Daten zugreifen. Die integrierte javascript-Bibliothek von linkedin wird automatisch senden Sie dieses cookie auf meinem server /backend. Diese json-Datei-info ist für die Benutzerauthentifizierung verwendet wird.
Jedoch, linkedin nicht senden Sie die private cookie, wenn der server keine https.
- Können Sie erklären, warum Sie müssen dies? Ich bin mir nicht sicher, wie man profitieren von der Verschlüsselung des Datenverkehrs auf Ihrer lokalen Maschine...von Ihrem lokalen Rechner
- Ich erarbeitet habe. Ich habe auch ein domain-name verweist auf die Kostenlose amazon-tier-server. Ich bereitgestellt mit der mup-Paket. Ist es eine überlegung Wert, die ich zu entwickeln, auf der amazon-server oder ist das Prinzip von amazon dienen und mein localhost portion gleich sein. dh keine größere Rekonfiguration zwischen dem lokalen host und einem anderen server
- Ich denke, dies könnte von nutzen sein, um Sie gist.github.com/micho/1712812 Es ist ein link zu einem Artikel, wie Sie das selbst signierte ssl in den Kommentaren des gist als gut.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schnelle und einfache Lösung, die funktioniert in dev/prod-Modus, mit
http-proxy
ontop Ihrer app.1) Fügen Sie in die
tarang:ssl
Paket2) Fügen Sie Ihr Zertifikat und den key in ein Verzeichnis in Ihrem app
/private
e.g/private/key.pem
und/private/cert.pem
Dann in Ihrer /server-code
Dann starten Sie Ihre app und laden Sie
https://localhost:6000
. Achten Sie darauf, nicht mischen Sie Ihre Häfen mit https und http, wie Sie serviert werden GESONDERT berechnet.Mit diesem ich nehme an, Sie wissen, wie man erstellen Sie Ihre eigenen, selbst signierten Zertifikat, es gibt eine Menge von Ressourcen, wie dies zu tun. Nur für den Fall, hier sind ein paar links.
Alternative zu self signed certs: es kann besser sein, auf ein offizielles Zertifikat für Ihre apps-domain ein, und verwenden Sie
/etc/hosts
erstellen Sie ein loopback auf Ihrem lokalen computer zu. Dieses ist, weil sein mühsam zu wechseln certs zwischen dev und prod.meteor
Befehl und die app startet inlocalhost:3000'. couldn't connect at 'https://localhost:6000'. although it shows
port 6000` hörtnode
wenn ich vonnetstat
. Hat jemand Gesicht das ähnliche problem?Oder Sie konnte einfach ngrok port weiterleiten 🙂
1) starten Sie Ihren server (z.B. unter localhost:3000)
2) start ngrok von der Kommandozeile aus: ./ngrok http 3000
das sollte geben Sie die http-und https-urls, um den Zugriff von jedem Gerät
Andere Lösung ist die Verwendung NGINX. Folgende Schritte sind getestet auf Mac El Capitan, vorausgesetzt, Ihre lokale website läuft auf port 3000 :
1. Fügen Sie einen host auf den lokalen Rechner :
Bearbeiten Sie Ihre Hosts-Datei :
vi /etc/hosts
Fügen Sie eine Zeile für Ihre lokalen dev-domain :
127.0.0.1 dev.yourdomain.com
Spülen Sie den cache
dscacheutil -flushcache
Nun sollten Sie in der Lage zu erreichen Ihre lokale website mit http://dev.yourdomain.com:3000
2. Erstellen Sie ein selbst signiertes SSL - wie hier beschrieben : http://mac-blog.org.ua/self-signed-ssl-for-nginx/
3. Installieren von nginx und konfigurieren Sie es zum anzeigen von https-Datenverkehr auf Ihrem lokalen website:
brew install nginx
sudo nginx
Nun sollten Sie in der Lage zu erreichen http://localhost:8080 und bekommen ein Nginx Nachricht.
Dies ist die Standard-conf so, jetzt müssen Sie die https-conf :
Bearbeiten Sie Ihre conf-Datei :
vi /usr/local/etc/nginx/nginx.conf
Kommentieren Sie den HTTPS-server-Abschnitt und ändern Sie folgende Zeilen :
server_name dev.yourdomain.com;
Legen Sie Ihre Zertifikate, die Sie gerade erstellt :
ssl_certificate /path-to-your-keys/nginx.pem;
ssl_certificate_key /path-to-your-keys/nginx.key;
Ändern Sie den Speicherort Abschnitt dieses:
Neustart nginx :
Und jetzt sollten Sie in der Lage sein, um Zugriff https://dev.yourdomain.com