Ich versuche, alle HTTP-Reqs auf HTTPS reqs umzuleiten. Mein Backend ist mit Knoten. Hier ist meine nginx Config auf conf.d/:NGINX: HTTP-Umleitung zu HTTPS funktioniert nicht mit Knoten
upstream node {
server 127.0.0.1:8000;
}
server {
listen 80;
server_name mydomain.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name mydomain.com;
ssl on;
gzip on;
ssl_certificate /etc/letsencrypt/live/mydomain.com/cert.pem;
ssl_certificate_key /etc/letsencrypt/live/mydomain.com/privkey.pem;
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/letsencrypt/live/mydomain.com/fullchain.pem;
ssl_session_timeout 5m;
location/{
proxy_pass http://node;
proxy_redirect off;
}
}
Hier ist mein Knoten config:
// Calls config file to ExpressJS instance
var app = require('./config/express')();
// Calls config file to MongoDB
require('./config/database')('mongodb://10.0.2.18/mydb');
http.createServer(app).listen(app.get('port'), function(){
console.log('HTTP listening on' + app.get('port'));
});
Es funktioniert, wenn ich das HTTPS-Protokoll explizit verwenden. Wenn ich jedoch das HTTP-Protokoll verwende, funktioniert es nicht, dh es wird nicht zu HTTPS umgeleitet.
Irgendwelche Vorschläge?
Für was es wert ist, wenn jemand anderes dies in derselben Situation sieht wie ich: Ich habe gerade von einer alten Version von Nginx auf die neueste aktualisiert, um HTTP2 zu verwenden und lange Geschichte kurz, meine HTTPS-Weiterleitung funktionierte nicht, weil Ich musste immer noch den alten Nginx-Prozess (n) beenden und Nginx erneut starten. – Zuko