首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何重新启动/更新node express vhost站点

如何重新启动/更新node express vhost站点
EN

Stack Overflow用户
提问于 2016-02-28 23:30:52
回答 1查看 195关注 0票数 2

我在两个网站上工作,都有两个版本,一个是活的一个是开发的。http://timeprize.comhttp://test.timeprize.com都使用express vhost在相同的端口和服务器上运行。

我的vhost应用程序看起来非常简单,基本上是这样的:

代码语言:javascript
复制
var evh = require('express-vhost'),
    express = require('express');

/*... some more variable declarations ...*/

if ( site_enabled('test.timeprize.com') ) {
    /**/
    evh.register('test.timeprize.com', function() {
        var app = express();
        app = require("../test_app/app.js").run_app(http);

        return app;
    }() );
};

if ( site_enabled('timeprize.com') ) {
    evh.register('timeprize.com', function() {
        var app = express();
        app = require("../live_app/app.js").run_app(http);

        return app;
    }() );
};

/*... more sites below ...*/

我正在使用“永远”进程运行上面的代码。

现在问题来了。由于测试站点和实时站点都使用相同的进程在相同的服务器/端口上运行,如何在不中断实时站点的情况下更新/重新启动测试站点?

EN

回答 1

Stack Overflow用户

发布于 2016-02-28 23:39:20

要解决以下问题:

,因为测试站点和实时站点都使用相同的进程在相同的服务器/端口上运行

这不应该发生。当第二个程序尝试侦听已占用的端口时,您的服务器应抛出错误。

要回答真正的问题:

如何在不中断活动站点的情况下更新/重新启动测试站点?

答案是永远不要使用。是的,这很简单,但对于同步运行多个应用程序的服务器,必须使用程序 is PM2

  1. 全局安装:

[sudo] npm i -g pm2

  1. 启动您的应用程序,如果它侦听低于1024的端口,则执行sudo:

[sudo] pm2 start app.js

  1. 使用:

重启应用程序

[sudo] pm2 restart [all|name]

[sudo] pm2 gracefulReload [all|name]

Check out documentation

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35684416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档