在Amazon Ec2上为apache用户设置路径变量

时间:2014-01-13 12:12:35

标签: linux apache path environment-variables amazon

我已经在这几个小时了,而且我没有到达任何地方。

我无法将/ usr / local / bin添加到apache用户PATH变量中。用户没有.profile,我不能su给用户,我无法使用exec从php导出到PATH并添加

SetEnv PATH / usr / local / bin

要么http.conf或.htaccess文件没有区别。我找不到envvars文件来改变它,但我怀疑还有其他一些问题。

我重启了apache,确实是我的服务器。

请帮忙吗?

2 个答案:

答案 0 :(得分:6)

结束了Alfe在答案中建议的内容,除了在/etc/init.d/httpd文件中(可以在更新时轻松覆盖),我添加到/ etc / sysconfig / httpd

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

答案 1 :(得分:1)

查看/etc/passwd以查看apache用户具有哪个登录shell(在EC2 Ubuntu实例上应该是/bin/sh,这是/bin/dash的链接)。然后查看该shell的手册页,找出登录时读取的配置文件。 (适用于用户主目录中/bin/dash的{​​{1}}。)在那些内容中,您应该可以根据需要扩展.login

编辑:

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

然而,修补这些脚本不被视为典型配置。更新可能会覆盖您在那里修补的内容。