ngx_lua模块中的os.execute命令会导致sudo tty无密码询问?

嗨,我正在配置我的mac上的nginx.conf,

我不得不执行一个lua脚本命令,比如- os.execute(echo '' | sudo -S brew services restart nginx-full),但它会给出密码错误,尽管我提供了我的实际mac用户密码。在没有密码的情况下,我在我的error.log中看到- sudo:没有tty存在,没有askpass程序指定

我如何获得在content_lua_block中执行os.execute openresty命令的权限。我还使用sudo visudo为权限添加了我的用户以设置NOPASS ALL。

我的/dev/tty只有root用户,我的用户名是sid,我该如何将sid添加到/dev/tty以获取权限...?

点赞