node.js - NodeJS Express 虚拟主机和更新 app.js

标签 node.js express vhosts

我刚刚设置了一个 NodeJS 服务器,并希望使用 Express 的 vhost 功能来轻松设置项目。我希望能够为新项目创建一个新目录,而无需经历创建新子域等的麻烦。

基本上,我希望能够访问位于 node.domain.com/project1 的项目 1 和位于 node.domain.com/project2 的项目 2。

我现在正在运行 server.js,它位于根 (node.domain.com/server.js) 中并包含:

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

app
.use(express.vhost('node.domain.com', require('./project1/app.js').app))
.use(express.vhost('node.domain.com', require('./project2/app.js').app))
.listen(3000);

一切正常,当我访问 node.domain.com/project1 时,我得到 ./project1/app.js 的结果,但每当我更改某些内容时在任何 app.js 文件中,都需要重新启动(Ctrl+C 后跟 node server.js)才能更新更改.

app.js 的内容例如:

var express = require('express'); 
var app = exports.app = express(); 

app.get('/project1', function(req, res){ 
    res.send('Hello World [/project1]');
});

知道这是为什么吗?

需要注意的是,我还在同一台服务器上运行 Apache,并且我使用 this guide允许两台服务器在端口 80 上运行(但可以通过不同的子域访问)。

最佳答案

哦!我现在感觉很愚蠢,似乎我需要使用类似 forever 的东西,带有 w 标志。

关于node.js - NodeJS Express 虚拟主机和更新 app.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21830450/

相关文章:

javascript - 如何使用模板通过 sendgrid API V3 发送电子邮件,完整示例

ajax - 保持数据与服务器同步

macos - 您无权访问此服务器上的/- Mac OS X Mojave 上的 Apache 2

node.js - express 虚拟主机 + https

javascript - index.ejs 中的 Angular Controller 错误

node.js - 回调中的for循环。封锁?

javascript - 找不到模块 "serve-static"| JavaScript | Node js

javascript - 无法访问 Node.js 中的其他文件

centos - 将虚拟主机添加到 httpd.conf 后出错 - centos

node.js - Golang 中的 Bcrypt 密码散列(与 Node.js 兼容)?