Я пытаюсь использовать Express в качестве сервера в стеке MEAN на AWS.Однако я столкнулся с проблемой, пытаясь настроить поддоменов.У меня есть основное доменное имя domain.com, и у меня есть идентификатор app.domain.com. Однако я перепробовал все, что нашел в Интернете, чтобы записать функциональность в файл server.js, и ничего не работает.Как я могу легко сделать это, чтобы вторая функция вместо загрузки на порт 8000 загружалась в моем поддомене app.domain.com?Заранее спасибо!
var express = require('express');
// Main Website
var web = express();
web.get('/', function (req, res){
res.sendFile('/web/index.html', { root: '.' })
});
var port = 9000;
web.listen(port);
console.log('Web Listening on port', port);
//Main Application
var app = express();
app.get('/', function (req, res){
res.sendFile('/app/index.html', { root: '.' })
});
var port = 8000;
app.listen(port);
console.log('Web Listening on port', port);
Обновление:
Я пытался использовать Vhost здесь, но он загружает одну и ту же вещь как для основного домена, так и для субдомена, и поэтому он не работает.Вот код, который я использовал:
var express = require('express');
var connect = require('connect');
var http = require('http');
var vhost = require('vhost');
// Main Website
var web = express();
web.get('/', function (req, res){
res.sendFile('/web/index.html', { root: '.' })
});
var port = 9000;
web.listen(port);
console.log('Web Listening on port', port);
//Main Application
var app = connect()
app.use(vhost('app.domain.com', function (req, res) {
res.sendFile('/app/index.html', { root: '.' })
httpServer.emit('request', req, res)
}))
app.listen(8000)
Мне не нужно, чтобы они были на отдельных портах, это было просто то, что я пытался изначально.Но в любом случае не работает до сих пор ..