【问题标题】:Deploy node app with http-server and forever使用 http-server 和永远部署节点应用程序
【发布时间】:2014-12-14 21:39:20
【问题描述】:

我想使用 http-server 和 forever.js 将我的应用程序部署到远程 ubuntu 服务器。但是 forever.js 需要 JS 文件的路径,而不是可执行文件。所以我不能将密钥传递给 http-server。迄今为止最好的解决方案是通过 npm 在本地安装 http-server 并运行如下内容:forever start ./node_modules/http-server/bin/http-server。但在这种情况下,我无法设置端口和其他选项。最佳做法是什么?

【问题讨论】:

    标签: node.js ubuntu daemon httpserver


    【解决方案1】:

    这个命令对我有用。

    永远启动 npm\node_modules\http-server\bin\http-server

    在此之前,您应该找到您的 npm 目录。

    【讨论】:

      【解决方案2】:

      试试这个:

      $ forever start $(which http-server) -p 8000 -d false
      

      forever start $(which http-server)后面可以加任意参数

      $(which http-server):返回http-server路径
      -p 8000:端口8000,改成任意端口号
      -d:显示目录列表

      【讨论】:

      • 这实际上是一个聪明的答案。
      • 您好,我这样做了,但它不提供该路径上的 html 文件。永远不会在浏览器中打开 ip start $(which http-server) -p 8001 -a 10.4.145.192 false
      【解决方案3】:

      浏览到包含文件的目录 并从命令行类型: 永远启动 -c http-server 。 -p your_port_number 例子: 永远启动 -c http-server -p 8000

      这样,8000端口就永远指向你目录下的html文件了。

      【讨论】:

        【解决方案4】:

        这对我有用

        先这样获取http-server的路径

        which http-server
        

        例如你会得到“/usr/bin/http-server”

        然后写下永远跟随的 http-server 路径和您的应用程序路径

        forever start /usr/bin/http-server /your/app/path
        

        最好的问候。

        【讨论】:

          【解决方案5】:

          您可以使用该代码设置选项。只需在命令结束后使用available flags。例如:

          forever start ./node_modules/http-server/bin/http-server -p 80 -d false
          

          【讨论】:

            【解决方案6】:

            我有同样的问题。找到一个 node.js script 可以运行 shell 命令并使用它来运行 http-server 命令和选项。

            名为 'startserver.js' 的 node.js 脚本示例:

            var sys = require('sys')
            var exec = require('child_process').exec;
            function puts(error, stdout, stderr) { sys.puts(stdout) }
            exec("sudo http-server -a ec2-xx-xxx-xxx-xx.compute-1.amazonaws.com -p 80", puts);
            

            然后你就可以使用forever运行它了:

            forever start startserver.js
            

            【讨论】:

              猜你喜欢
              • 2016-07-15
              • 2015-09-14
              • 2011-03-01
              • 2018-09-22
              • 2019-06-24
              • 2015-11-08
              • 2018-02-16
              • 2015-02-28
              • 1970-01-01
              相关资源
              最近更新 更多