J’utilise HttpLuaModule pour mon serveur NGINX. Je veux demander s’il est possible de reconnaître une variable dans différentes directives de ce module. Par exemple
init_by_lua ' local global_var = 5 ' ; some config ; set_by_lua ' print(global_var) ' ;
Comment est-ce possible avec NGINX et le module LUA?
Si vous voulez que global_var
soit global, ne le déclarez pas comme local.
En regardant rapidement les documents de init_by_lua
, init_by_lua
et set_by_lua
fonctionnent sur le même état global de Lua et vous pourrez donc les faire parler si vous utilisez des variables globales. Les variables locales définies dans init_by_lua
seront perdues.
Donc, cela devrait fonctionner si vous supprimez simplement local
dans init_by_lua
.