Shell命令在生产模式下的Rails中失败

问题描述 投票:0回答:0

我已经在VPS上部署了一个Rails 4应用程序,该应用程序根据任务执行shell命令。 该应用程序可在Nginx上与Passenger一起运行。

我遇到的情况是没有任何shell命令起作用。 经过一些调试后,我注意到每个命令都返回“找不到”错误消息。

例如:

out = %x[date 2>&1] # outputs 'sh: 1: date: not found\n' 

为什么会这样呢? 我应该设置一些配置设置以允许在生产模式下使用Shell命令吗? 我对Rails很陌生,所以我不确定是什么原因造成的。

更新:

这是更多信息,当从rails whoami查询时,我得到www-data ,如果我打印$ PATH,我得到/usr/local/lib/ruby/gems/2.1.0/bin但是如果在命令行中执行sudo -u www-data printenv PATH结果是/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ...这有意义吗?

ruby-on-rails nginx passenger
© www.soinside.com 2019 - 2024. All rights reserved.