首页 > 解决方案 > Apache 无法读取我的环境变量

问题描述

我在我的 linux 服务器上创建了一个名为 API_KEY 的环境变量,当我在 php 上运行以下命令时,我得到了错误,这意味着没有具有该名称的变量。

$api = getenv("API_KEY");

我按照以下步骤创建了变量:

在 /etc/profile.d/ 中创建了一个 keys.sh 文件并使用这种格式保存了我的变量 API_KEY="my variable value"

当我以 user-ec2 或 root 身份运行“printenv”命令时,我可以看到环境变量在那里,但问题似乎是当 apache 尝试访问它时不会出现,我不知道怎么做才能让 apache 用户找到这个变量。

标签: phpapacheenvironment-variables

解决方案


我去了 etc/httpd/conf,我的 httpd.conf 文件所在的位置并使用以下方法创建了环境变量:

SetEnv API_KEY API_KEY_VALEU

现在apache用户可以在我使用时返回环境变量:

getenv('API_KEY');


推荐阅读