gpt4 book ai didi

Node.js:带有 CNAME 记录的 url 路由

转载 作者:太空宇宙 更新时间:2023-11-03 22:01:52 24 4
gpt4 key购买 nike

我想将 example.orgcname.example.org 映射到两个不同的 Node.js 应用。但不要使用 nginx 等 http Web 服务器。

Web 框架是 express

那么express或node.js中有没有中间件可以做到这一点?

最佳答案

Express 使用 connect,因此您可以执行以下操作:

var express = require('express'),
app = express();

app.use(express.vhost('example.org', require('./exampleApp/')));
app.use(express.vhost('cname.example.org', require('./cnameExampleApp/')));

app.listen(80);

github上也有一个例子: https://github.com/visionmedia/express/tree/master/examples/vhost

这里是 connect.vhost 的引用: http://www.senchalabs.org/connect/vhost.html

编辑:在最近的 Express 版本中,大多数中间件(例如 vhost)都不包含在内,因此您必须手动安装它们。

首先,运行:

$ npm install --save vhost

更新的代码片段:

const express = require("express");
const vhost = require("vhost");

const app = express();

app.use(vhost("example.org", require("./exampleApp/")));
app.use(vhost("cname.example.org", require("./cnameExampleApp/")));

app.listen(80);

关于Node.js:带有 CNAME 记录的 url 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20735756/

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