1

我正在尝试为我的 rails 应用程序设置一个乘客开发环境,我的应用程序使用了一个 git gem,我在乘客、捆绑程序和 git 方面遇到了一些问题:

Error message:
No such file or directory - git ls-files
Exception class:
Errno::ENOENT

我使用 Homebrew 安装了 git,我尝试出售我的 gem,但没有成功。我的猜测是 nginx/passenger 没有找到 git 二进制文件。

4

1 回答 1

0

您需要确保您的 Ruby 进程(即您的Passenger 进程)具有可工作的$PATH. 但是,这可能很困难,并且绝对是一个安全漏洞。通过在真正的可执行文件git之前的路径中放置一个脚本,我可以让你的应用程序以 root 身份运行任何东西。git因此,比依赖 $PATH 更好,使用 git 的完整路径,可能类似于/opt/local/bin/git.

于 2011-05-27T22:09:45.477 回答