2
我正在嘗試使用nodejs創建一個反向代理,我可以在其中映射不同的 組合指向各種網站。在Nodejs中實現反向代理
的follwing是我第一次嘗試代碼:
var http = require('http'),
httpProxy = require('http-proxy');
httpProxy.createServer(function (req, res, proxy) {
proxy.proxyRequest(req, res, {
host: 'www.yahoo.com',
port: 80
});
}).listen(8000);
以及工作正常,但如果我有一整套的組合。我不知道如何去做。
我的第二次嘗試
var http = require('http'),
httpProxy = require('http-proxy');
var mapping = {
hostnameOnly: true ,
router : {
'127.0.0.1:8000' : 'www.google.com' ,
'127.0.0.1:8001' : 'www.yahoo.com'
}
}
var proxyserver = httpProxy.createServer(mapping).listen (80) ;
這行得連工作,我不知道爲什麼。
那麼我想創建的是簡單的應用程序,其中我映射到域 並獲取這些頁面。 我仍然得到一個nodejs的掛起,所以如果這個問題聽起來很荒謬,我很抱歉。
不完全是答案,但這裏有一些提示可以幫助您診斷問題。 NodeJS將所有依賴關係存儲在node_modules下。 node_modules下的依賴關係只是js文件。像node-http-proxy這樣的依賴項完全用JavaScript編寫,因此你可以改變它們。只需轉到node_modules下的node-http-proxy並添加一些console.log()即可。它應該有所幫助。 – 2012-03-09 18:20:38