我在服务器上设置了 openresty(包含 lua 模块的 nginx 包),我正在尝试创建一个脚本,该脚本具有在用户浏览器上设置 cookie 的特定几率。我的代码如下所示:
location =/index.php {
set $random_num 0;
rewrite_by_lua '
marth.randomseed(1);
nvx.var.random_num = math.random(0,3);
';
add_header Set-Cookie "random_num=$random_num; path=/; domain=...com;";
}
我知道我的随机种子函数实际上并不是非常随机,但我想我稍后会处理它。目前我只是想让 nginx 设置一个随机数,但这样做会产生这个错误:
2012/07/11 11:27:20 [error] 5492#0: *44 lua handler aborted: runtime error: [string "rewrite_by_lua"]:3: attempt to ind
ex global 'marth' (a nil value)
stack traceback:
谁能告诉我我做错了什么,以及是否有任何其他方法可以在 nginx 中获取随机数?
根据您的错误日志条目,您似乎有一个简单的拼写错误。
这应该是: