我是Node.JS的新手,在VPS上部署了第一个应用程序。在端口8000上运行后,我决定创建一个http-proxy,用于将每个域转发到其特定端口。我编写了一个小应用程序,如下所示:
var http = require('http'),
httpProxy = require('http-proxy');
var option = {
router : {
'domain.com' : 'http://88.198.86.100:8000'
}
};
var proxyServer = httpProxy.createServer(option);
proxyServer.listen(80);88.198.86.100 is my server ip。
所以,我的问题显示在这里,当我在我的浏览器PC (Google Chrome)中输入88.198.86.100时,我在服务器中的代理应用程序被传输,并给出了这个错误:
C:\Users\Administrator\Desktop\Nodejs\node_modules\http-proxy\lib\http-proxy\index.js:119
throw err;
^
Error: Must provide a proper URL as target
at ProxyServer.<anonymous> (C:\Users\Administrator\Desktop\Nodejs\node_modules\http-proxy\lib\http-proxy\index.js:68:35)
at Server.closure (C:\Users\Administrator\Desktop\Nodejs\node_modules\http-proxy\lib\http-proxy\index.js:125:43)
at emitTwo (events.js:106:13)
at Server.emit (events.js:191:7)
at HTTPParser.parserOnIncoming [as onIncoming] (_http_server.js:546:12)
at HTTPParser.parserOnHeadersComplete (_http_common.js:99:23)
error: Forever detected script exited with code: 1我希望有人在每个浏览器中输入IP服务器,我的应用程序就不会崩溃。
发布于 2019-03-04 19:49:00
//below code works for me
var httpProxy = require('http-proxy')
var proxy = httpProxy.createProxy();
var options = {
'foo.com': 'http://foo.com:8001',
'bar.com': 'http://bar.com:8002'
}
require('http').createServer(function(req, res) {
proxy.web(req, res, {
target: options[req.headers.host]
});
}).listen(80);https://stackoverflow.com/questions/41151964
复制相似问题