我正在Node.JS中编写HTTP/HTTPS代理服务器,我希望服务器在与HTTP相同的端口上处理HTTPS流量。与HTTP相同的端口上的HTTPS?
下面的图片解释了为什么我要做到这一点,用户只需勾选...
我意识到,我不能有2台服务器监听同一端口上,但有没有办法设置一个主要的服务器,该服务器将流量转发到HTTP或HTTPS流量?
事情是这样的:
http.createServer(myHTTPCallback).listen(3129, '127.0.0.1');
https.createServer(myHTTPSCallback).listen(3130, '127.0.0.1');
//Then a main server that will listen for both kinds of traffic
main.createServer(function(req, res){
if(/*Traffic is HTTPS*/){
//Forward to 127.0.0.1:3130
}
else{
//Forward to 127.0.0.1:3129
}
}).listen(3128, '192.168.0.2');
如何将我上面代码中的?
编辑 - 按@克里斯小丑,年轻的答案
我创造了这个简单的服务器,但我只收到输出HTTP请求。此外断点或控制台日志不跟踪:
var http = require('http');
http.createServer(function(req, res){
res.write('<h1>Resquest Received</h1>');
res.write('<span>Requested URL = ' + req.url + '</span>');
res.end();
}).listen(3128);
Downvoter - 解释吗? – Drahcir