gpt4 book ai didi

node.js - 使用 Express 的简单子(monad)域

转载 作者:太空宇宙 更新时间:2023-11-03 23:20:53 26 4
gpt4 key购买 nike

我正在尝试使用 Express 作为 AWS 上 MEAN 堆栈中的服务器。但是,我在尝试设置子域时遇到了问题。我有我的主域名domain.com并且id喜欢有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)

我真的不需要将它们放在单独的端口上,这只是我最初尝试的东西。但无论哪种方式仍然不起作用..

最佳答案

不需要在一个端口上提供除 Node.js 之外的任何东西。这只是一个基于http header的路由问题。

var express = require('express');
var http = require('http');
var vhost = require('vhost');

// Main Website
var webapp = express();
webapp.get('/', function (req, res){
res.sendFile('/web/index.html', { root: '.' });
});

//Main Application
var mainapp = express();

mainapp.use(function (req, res) {
res.sendFile('/app/index.html', { root: '.' });
}));


//Virtual Routing Application

var app = express();

app.use(vhost('app.domain.com', webapp));
app.use(vhost('domain.com', mainapp));
app.use(vhost('www.domain.com', mainapp));

app.listen(9000);

关于node.js - 使用 Express 的简单子(monad)域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50033966/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com