路径在PHP exec或shell_exec中不可用

时间:2015-09-04 07:52:05

标签: php linux bash shell centos6

我一直在尝试和搜索我在php应用程序中遇到的一个小问题。我们使用a来查找程序的完整路径,但是它返回

which: no bla in ((null))
在Centos上,在我们自己的debian盒子上它运行得很好。从那时起我就明白了(很明显)PHP中的shell中没有PATH。但我无法找到的是为什么会这样。我用各种命令替换了命令,以找出我运行的环境。

如果我运行echo $ PATH,我实际上会看到我在.bash_profile中设置的目录。如果我运行echo $ SHELL我知道我正在使用bash,如果我运行whoami我发现我不是apache用户而是另一个用户,我更改了.bash_profile。正如我所读到的那样,shell之间存在差异,所以我认为它可能不会加载.bash_profile所以我还将导出PATH添加到.bashrc。

我可以通过更改代码来使用它,我可以替换它,但我只是真正感兴趣的是为什么这不适用于这个centos配置。我现在在exec函数中添加了一个导出PATH,然后它才能工作,并且还应该在其他系统上工作,但我认为它不应该是必要的。

任何人都知道会导致这种行为的原因吗?

0 个答案:

没有答案