加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP和Apache环境变量

发布时间:2020-12-13 13:34:06 所属栏目:PHP教程 来源:网络整理
导读:我想在启动时将 linux中的环境变量传递给apache. 出口MYVAR = 5 – 我在命令行上定义我的环境变量 PassEnv MYVAR – 设置apache以在apache配置文件中导入变量 apachectl重启 – 当我重新启动apache时,我没有收到错误消息.但是我注意到了 如果我在第一步中没
我想在启动时将 linux中的环境变量传递给apache.

出口MYVAR = 5
– 我在命令行上定义我的环境变量

PassEnv MYVAR
– 设置apache以在apache配置文件中导入变量

apachectl重启
– 当我重新启动apache时,我没有收到错误消息.但是我注意到了
如果我在第一步中没有创建环境变量,我会收到一条警告信息,所以必须在这里工作

echo $_SERVER [‘MYVAR’]
–i尝试访问PHP中的环境变量,但未定义

我观察到如果我尝试PassEnv一个已经退出的环境变量(我自己没有创建的那个)它可以正常工作. SetEnv指令也可以正常工作.

我真的很想动态地将环境变量传递给apache而不将其写入文件中.非常感谢.

我正在使用CentOS,PHP5和Apache2.

谢谢.

更新
如果我直接使用httpd调用apache启动而不使用apachectl这是一个shell脚本,似乎环境变量被传递.我原以为“导出”会将变量导出到shell脚本中吗?我不是一个Linux大师,所以请原谅我缺乏知识.

如果您希望将环境变量传递给apache,则应确保为运行apache的环境定义了所述环境变量.为此,最简单的选择是向envvars添加导出MYVAR =值行(应该位于/ etc / apache2)或启动apache的脚本(在/etc/init.d中),并在您的apache配置中将PassEnv MYVAR添加到所需的位置.

重新启动apache应确保传递MYVAR环境变量. AFAIK你将无法在apache运行时更改此var的值…

CentOS的一些相关信息:http://php.dzone.com/news/inserting-variable-headers-apa&default=false&zid=159&browser=16&mid=0&refresh=0

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读