在Amazon Ec2上为apache用户设置pathvariables

我已经在这上好几个小时了,而且我什么地方都没有。

我无法将/ usr / local / bin添加到apache用户的PATHvariables中。 用户没有一个.profile,我不能su的用户,我不能从php导出到PATH使用exec和添加

SetEnv PATH / usr / local / bin

要么http.conf或.htaccess文件没有什么区别。 我无法findenvvars文件来改变,但我怀疑还有其他一些问题。

我已经重新启动Apache,实际上我的服务器。

请帮忙吗?

结束了按照阿尔菲在他的回答建议,除了在/etc/init.d/httpd文件(这可以很容易覆盖更新),我添加到/ etc / sysconfig / httpd

export PATH = $ {PATH:+ $ PATH:} / usr / local / bin

看一下/etc/passwd来查看apache用户拥有哪个登录shell(在EC2 Ubuntu实例上它应该是/bin/sh ,这是一个到/bin/dash的链接)。 然后查看该shell的手册页,并找出在登录时读取哪些配置文件。 (对于在用户的主目录中.login /bin/dash 。)在那些你应该能够扩展你的$PATH只要你喜欢。

编辑:

由于您似乎没有该用户的登录shell:请查看启动系统服务的/etc/init.d/*脚本。 Apache将是其中之一。 它们以root用户身份启动,并可能更改当前用户(例如,apache用户)。 在那里你可以根据需要调整PATH。

修补这些脚本,但是,不被视为典型的配置。 更新可能会覆盖你在那里修补的东西。