NGINX lua使用 .env 文件中的 secure_link_md5

我正在使用支持 lua 的 NGINX 访问主机名和其他应用相关变量从我的 .env 文件中。现在我想使用来自 .env 文件的 secure_link_md5 变量,但我不知道如何组合字符串,以使 nginx 能够理解它。

这是我的 nginx 配置文件的样子:

env LINK_SECRET;

set_by_lua $curr_dl_link_secret 'return os.getenv("LINK_SECRET")'; # 需要正确设置
secure_link_md5 = "${curr_dl_link_secret}$uri$secure_link_expires";

正常情况下,我会像这样设置配置行,而不使用 lua 和 env 变量:

secure_link_md5 "XGc7YyXERjiSvs4PtzpnBMANuFd22VAmXDc66g6JU$uri$secure_link_expires";

目前,NGINX 总是返回以下错误:

"secure_link_md5" 中的无效参数数

点赞
用户3270865
用户3270865

NGINX将"="视为参数。我并不熟悉带有lua的NGINX,但我认为"{}"也是不必要的。

我想你想要这样的东西:

secure_link_md5 "$curr_dl_link_secret$uri$secure_link_expires";
2020-02-14 06:39:39