繁体   English   中英

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

[英]Setting path variable for apache user on Amazon Ec2

我已经在这个问题上呆了几个小时,但我什么也没得到。

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

SetEnv PATH /usr/local/bin

无论是http.conf还是.htaccess文件都没有区别。 我找不到envvars文件来更改它,但我怀疑还有其他问题。

我已经重新启动了 apache,确实是我的服务器。

请问有什么帮助吗?

最终遵循 Alfe 在他的回答中建议的内容,除了我添加到/etc/sysconfig/httpd/etc/init.d/httpd文件(可以在更新时轻松覆盖)之外:

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

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

编辑:

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM