nginx – 无法在Lua代码中使用环境变量

前端之家收集整理的这篇文章主要介绍了nginx – 无法在Lua代码中使用环境变量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一些Lua代码,我在openresty Nginx.conf文件中使用它.这个Lua代码包含这样的行:

...
local secret = os.getenv("PATH")
assert(secret ~= nil,"Environment variable PATH not set")
...

出于测试原因,我试图检查是否设置了PATH变量,并且由于某种原因,断言语句没有通过.我在控制台中看到:

Environment variable PATH not set

但是,当我运行这个

$echo $PATH

我知道,这个变量确实有一些价值.那么,这有什么问题,我该如何解决

最佳答案
您需要告诉Nginx使环境变量可用.从docs for the env directive:“默认情况下,Nginx删除从其父进程继承的所有环境变量,但TZ变量除外.该指令允许保留一些继承的变量,更改它们的值或创建新的环境变量.”

因此,在您的情况下,您需要指定env PATH;在Nginx.conf中.

猜你在找的Nginx相关文章