javascript - 从另一个目录 cwd 使用 Sails 运行 Node

标签 javascript node.js command-line sails.js

我需要能够启动我的 Node 应用程序,即使用来自另一个工作目录的 Sails:

通常: Node 应用

我需要的是:node myfolder/app

第二种方法提升了服务器,但是,所有 Assets 都无法正常工作。看起来他正在使用我的当前目录作为 Assets 文件夹(没有尝试 api 或其他任何东西),但是服务器被解除了。

发生了什么,访问资源时返回Not Found

这是个问题,还是我做错了什么?

解释我的目标:

我有一个包含多个 Node 应用程序的文件夹。我正在使用 pm2 启动很多进程,所以,我的文件夹结构是这样的:

Apps
 |- processes.json

 | App1
   |-...

 | App2
   |-...

我需要从 Apps 文件夹启动所有应用程序,不是 App1App2文件夹。但是,它不能与 Sails.js 一起正常工作。我试图从另一个工作目录只运行一个应用程序,但出现了同样的问题。

最佳答案

实际上,如果您要通过进程管理器运行某些东西,更好的答案是更改 Sails 应用程序主文件本身的目录。也就是说,在 App1/app.js 文件的顶部,放置:

process.chdir(__dirname);

这样您就不会启动不同的流程,并且流程管理器将能够以预期的方式监控输出、日志等。

不确定默认情况下在 Sails 中拥有这是否是一件好事,但我们会研究它!

关于javascript - 从另一个目录 cwd 使用 Sails 运行 Node,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22564229/

相关文章:

javascript - Google Maps Remote .js 和 Access-Control-Allow-Origin

javascript - 检查参数中是否存在数组

node.js - 当类型为 oracle 时 MissingDriverError : using typeorm

node.js - AWS RDS/EC2 : TimeoutError: Knex: Timeout acquiring a connection. 池可能已满

c++ - 以编程方式逐行向 stdin 提供输入?

javascript - 提示时取消和空输入的不同值

javascript - 使用 browserify 对 js 文件进行版本控制,以防止客户端使用旧的 js 文件

javascript - 使用 Node.js 进行视频游戏流传输

mysql - 如何在windows的命令行中找到mysql数据目录

unix - unix 进程正在使用的文件