node.js - 多域、单 Node (快速)应用程序

标签 node.js express multiple-domains

我正在尝试创建简单的 Node 应用程序,用户可以在其中创建配置文件。默认情况下,他的个人资料的 url 应该是 - user1.myappname.com,但是当用户填写自定义域输入(并将此域指向我的应用程序 IP 地址)时,他应该能够使用此自定义域,如:

usercustomdomain.com => user1.myappname.com usercustomdomain.com/someaction => user1.myappname.com/someaction

这里有人有使用 express.js 实现它的经验吗?我的意思不仅是自定义域,还有子域。

谢谢 -M

最佳答案

因为无论域是什么,您的路径都是相同的,所以这很简单。从传递到您的 Express 路由方法的请求中获取主机名,然后执行您需要的任何查找。 Node 不关心域是什么,只要您的域具有子域的 CNAME,并且自定义域指向与 myappname.com 相同的 IP 地址,Node 将以相同的方式响应所有请求。

例如,在你的/someaction route :

app.get('/someaction', function(req,res) {
    hostName = req.header('host');
    // lookup info from database based on hostName, then output it ....
});

关于node.js - 多域、单 Node (快速)应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9125577/

相关文章:

node.js - ansible 安装 node.js 版本 6

javascript - 在 Javascript 中生成 Excel 文件缩略图预览

node.js - 在 Node.js Express 上渲染 HTML(在另一个 HTML 文件中包含 HTML 代码)

html - 将 connect.sid 存储在 localStorage 而不是 cookie

tomcat - 单个 apache tomcat 上的多个域

dns - 如何找到解析到一个 IP 地址的所有域名?

apache - 一个站点的多个域 : alias or redirect?

c# - 有没有办法监视控制台应用程序的状态?

html - 使用 require ('fs' 进行浏览)

node.js - 如何使查询结果可从所有页面访问