NodeJS无法重定向(甚至查看)某些传入请求

时间:2018-06-10 18:12:27

标签: node.js ssl

使用This tutorial我能够使用SSL密钥设置NodeJS。它创建了两个http服务器(一个是安全的,一个不是)。

var app = express();
var sslOptions = {}; // SSL key stuff in here

var https = require('https');
https.createServer(sslOptions, app).listen(443);

var http = require('http');
http.createServer(app).listen(80);

然后它检查任何传入的请求 - 如果它不安全,它会将其重定向到安全URL

app.use(function(req, res, next) {
  console.log('request... ' + req.url); // I don't see this 
  if (req.secure) {
    console.log('secure ' + req.url);
    next();
  } else {
    console.log('redirect... https://' + req.headers.host + req.url);
    res.redirect('https://' + req.headers.host + req.url);
  }
});

当我开始使用新浏览器时,我看到一些请求,例如favicon.ico。但是对www.mydomain.com的实际请求似乎一起绕过了这一点(就像我对终端的要求一样)。更糟糕的是我曾经在这一点上工作过。不知道我做了什么打破它。 Anywho,结果是http://www.example.com试图在https://www.example.com/endpoint点击一个端点而且它失败了(更不用说没有加载页面的安全版本了。)

0 个答案:

没有答案