Ich versuche, jede HTTP-Anfrage an einen HTTPS-Server umzuleiten. This works fine Wenn der Port des https-Servers der 443 ist. Wenn ich jedoch versuche, zu einem anderen Port umzuleiten, passiert das nicht. Hier ist mein Code:HTTP-Umleitung zu HTTPS in einem anderen Port
http.createServer(function(req,res){
var host = req.headers['host'],
url = req.url;
res.writeHead(301,
{"Location": "https://" + host + ":"+SERVER.SPORT + url})
res.end()
}).listen(SERVER.PORT)
https.createServer(SERVER.HTTPS_OPTIONS,app).listen(SERVER.SPORT)
Ich hatte das in einem Protokoll und nicht bemerkt. Ich fühlte mich wirklich dumm nach deiner Antwort, sie haben sogar eine schöne Darstellung der URL in der [api] (https://nodejs.org/api/url.html#url_url_strings_and_url_objects)! Aber wenn ich explizit nach dem 'example.com: 80' gefragt habe, würde die Methode, die in anderen Antworten gefunden wurde (und die ich verwendete) auch fehlschlagen. Was bedeutet, dass dies nur wegen der versteckten Standard-Ports funktioniert? –