【问题标题】:Node error on aws ubuntu but not OSXaws ubuntu上的节点错误但不是OSX
【发布时间】:2014-11-19 17:12:08
【问题描述】:

我有一个使用 Express/Node 编写的项目,它可以在 OSX 上本地运行。但是,当我将其克隆到运行 Ubuntu 的 aws EC2 实例时,出现此错误:

events.js:72 投掷者; // 未处理的“错误”事件 ^ 错误:生成 ENOENT

当我在浏览器中打开公共 DNS 时。提供了 html,但我的公共目录中的任何内容都没有提供。即使我直接访问文件(例如 ./css/style.css)。

Ubuntu 上的 Node 和 OSX 上的 Node 一定有区别吗?错误消息不够详细,无法知道出了什么问题...

感谢您的帮助!

【问题讨论】:

  • 我还应该注意,在公用文件夹上运行 simple-server 可以很好地提供内容。
  • 你在服务器和 OSX 上运行什么命令?也许您正在使用不同的工作目录运行命令。
  • 我正在使用使用 express 生成器创建的启动脚本 ./bin/www 启动服务器。脚本中的代码是这样的: var debug = require('debug')('cog_study'); var app = require('../app'); app.set('port', process.env.PORT || 8080); var server = app.listen(app.get('port'), function() { debug('Express server监听端口' + server.address().port); });

标签: node.js ubuntu amazon-web-services express error-handling


【解决方案1】:

运行命令 在 Ubuntu 服务器上进行 npm 重建。 这可能是由 OSX 中使用的二进制文件引起的。它们在 Ubuntu 中是不同的。

【讨论】:

  • 它没有解决错误,但感谢您的提示。
  • 您使用的是 Ubuntu 14.04?也许这可以帮助你:github.com/Unitech/PM2/issues/708(查看 soyuka 的答案)
  • 我刚刚创建了一个新的 EC2 实例并尝试了 soyuka 的建议。不过,我仍然有这个问题。
【解决方案2】:

两天后,我终于找到了。 express 生成器使用 sass 编译器设置项目,该编译器需要 Ruby 和 Sass gem,而 aws Ubuntu 发行版没有。谢谢大家帮我解决这个问题。我希望节点中的错误消息更有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-05
    • 2017-01-22
    • 2016-09-27
    • 1970-01-01
    • 1970-01-01
    • 2021-11-12
    • 1970-01-01
    • 2019-04-03
    相关资源
    最近更新 更多