Есть ли способ сделать виртуальный хостинг с сервером node.js(т.е. размещать несколько доменов под одним IP-адресом)?
Виртуальный хостинг с автономным сервером node.js
Ответ 1
Конечно, вы можете использовать bouncy или node-http-proxy специально для этого.
Также есть решение Express. Посмотрите этот пример.
Ответ 2
Веб-браузеры отправляют свойство заголовка "хост", который идентифицирует хост домена, с которым они пытаются связаться. Таким образом, самый простой способ:
http = require('http');
server = http.createServer(function(request, response) {
switch(request.headers.host) {
case 'example.com': response.write('<h1>Welcome to example.com</h1>'); break;
case 'not.example.com': response.write('<h1>This is not example.com</h1>'); break;
default:
response.statusCode = 404;
response.write('<p>We do not serve the host: <b>' + request.headers.host + '</b>.</p>');
}
response.end();
});
server.listen(80);
Ответ 3
Я бы рекомендовал express-vhost, потому что остальные решения основаны на прокси-сервере, это означает, что каждый из вас должен открыть другой порт.