【问题标题】:Set env variable for apache after user input用户输入后为 apache 设置环境变量
【发布时间】:2020-07-01 14:53:47
【问题描述】:

我需要在用户输入后传递一些动态环境变量以用作 PHP 的变量。

我已经有一个脚本可以导出用户输入的变量

#!/bin/bash
export APACHE_ENV_VAR0 = $1
export APACHE_ENV_VAR1 = $2

之后我检查了值,一切正常。然后我在我的 httpd.conf 中设置以下内容

SetEnv APACHE_ENV_VAR0 ${APACHE_ENV_VAR0}
SetEnv APACHE_ENV_VAR1 ${APACHE_ENV_VAR1}

#Also tried with PassEnv directive

问题是输出总是假的,所以它没有找到那些变量。

这个想法是在我执行脚本并设置我的变量后,启动 httpd 并使用这些变量,但没有按预期工作。

我的env是centos,apache2.4和php5.4

关于如何做到这一点的任何想法。需要用户输入。

提前致谢!

【问题讨论】:

    标签: php apache environment-variables


    【解决方案1】:

    最可能的罪魁祸首是 Apache 在不同的上下文中作为不同的用户启动,并且没有设置这些环境变量。更直接的方法是保留 httpd.conf 的原始副本作为模板。在其中搜索并替换您需要的变量值,然后使用修改后的文件启动 Apache。

    例如在模板文件 SetEnv APACHE_ENV_VAR0 ^REPLACE_ME^

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-29
      • 1970-01-01
      • 2023-03-10
      • 1970-01-01
      • 2017-03-20
      相关资源
      最近更新 更多