Я новичок в модуле node-http-proxy
.
моя цель
Мне нужно использовать модуль предоставления нескольких SSL для нескольких субдоменов. Например; если пользователь звонит process.localhost:1443
, то я должен направить вызов на process.localhost:2443
, а если пользователь звонит на api.localhost:1443
, то я должен направить вызов на api.localhost:3443
что происходит
Я написал приведенные ниже коды server.js. Однако, когда я пытаюсь позвонить process.localhost:1443
, я получаю следующую ошибку:D:\Work Space\...\http-proxy\node_modules\requires-port\index.js:13
protocol = protocol.split(':')[0];
TypeError: Cannot call method 'split' of undefined
protocol
кажется undefined
.
function required(port, protocol) {
protocol = protocol.split(':')[0];
Что я должен делать?
сервер.js
var fs = require('fs'),
httpProxy = require('http-proxy'),
express = require('express'),
app = require('./app').service,
api = require('./api').service;
// PROXY
var options = {
changeOrigin: true,
forward: {
'process.localhost': 'process.localhost:2443',
'api.localhost' : 'api.localhost:3443'
}
}
httpProxy.createServer(options).listen(1443, function() {
console.log('Proxy is listening on port 1443')
})
// HTTP
app
.listen(2443, function() {
console.log('PROCESS APP server is listening on port 2443')
})
api
.listen(3443, function() {
console.log('API APP server is listening on port 3443')
})
1443
порт. И тогда я могу раздать запрос поhostname
. Но я не использовалhostname
.targets
недостаточно? - person efkan   schedule 06.04.2015localhost
. Нужно ли мне? Я не мог найти другого способа маршрутизации портов. - person efkan   schedule 06.04.2015http-proxy
вы используете? Я просмотрел примеры на https://github.com/nodejitsu/node-http-proxy и https://www.npmjs.com/package/http-proxy, но ни один из них не используетtarget
так, как вы пользуемся. В примерахtarget
— это либо строка, либо объект со свойствамиhost
иport
(target: { host: ..., port: ... }
), а не отображение одного хоста+порта на другой. - person apsillers   schedule 06.04.2015http-proxy
. Но это не работает. - person efkan   schedule 07.04.2015