我使用 C 和 C++ 编写了一个 fastcGI 应用程序
如果尚未设置特定的环境变量,我有一个返回字符串的免费函数。该函数如下所示:
namespace
{
std::string getNameString()
{
char * datastr_ = getenv(MY_ENVAR.c_str());
if (datastr_)
return std::string(datastr_);
return DEFAULT_NAME;
}
};
然后我执行以下步骤(按照下面给出的顺序)
- 我已经编辑了我的 /etc/environment 并添加了适当的环境变量
- 我通过在控制台上输入 printenv 确认变量已设置
- 我停止然后启动 apache 守护进程
当我调试我的应用程序时,我发现环境变量没有设置。我怀疑 fastcgi 应用程序运行的环境可能与运行“正常”应用程序的环境不同。
有谁知道如何在 fastcgi 应用程序中检索环境变量?