【发布时间】:2013-10-13 07:47:43
【问题描述】:
尝试设置 connect 的 vhost 中间件。希望得到一些帮助。
我有一个普通的 express.js 应用程序,带有 node_modules、public、views 和 routes 目录。我在包含另一个 express.js 应用程序的目录旁边添加了另一个目录。
我已将此行添加到我的顶级应用程序 (tedxgramercy):
app.use(express.vhost('chatter.tedxgramercy.com', require('./chatter/app.js').app));
我的聊天应用程序的这一行:
var app = exports.app = express();
chatter 应用调用监听端口 8000,主(顶级)应用调用监听端口 3000。我不知道这是否正确。
当我启动我的应用程序(节点应用程序)时,它运行良好,我可以分别访问 localhost:3000 和 localhost:8000 上的两个应用程序,但是当我部署到我的服务器时,子域 http://chatter.tedxgramercy.com 不起作用。
任何指针?我是否必须更改我的 DNS 以指向其他端口或其他什么?
【问题讨论】:
-
URL 中的主机名需要与代码中的主机名完全匹配(除非您使用 glob 模式),因此请尝试使用
vhost('chatter.tedxgramercy.com')或vhost('chatter.*')。 -
我做到了,但没有运气。
标签: node.js express subdomain vhosts