Uma variável nginx que você tenta usar em Lua já deve existir primeiro. Mas você tentou usar uma variável sem criá-la:
ngx.var.ck = "$http_x_device_type$http_x_app_version_code$http_origin_api_cache_$user_agent_helpchat$host$request_uri";
e
ngx.var.ck = "$http_x_device_type$http_x_app_version_code$http_x_akosha_auth$http_x_helpchat_auth$http_origin_api_cache_$user_agent_helpchat$host$request_uri";
No início do mesmo bloco location
ou server
contendo seu script Lua, você pode criá-lo com, por exemplo:
location ~^/(deals-new)/ {
set $ck "";
Na documentação :
Note that only already defined nginx variables can be written to. For example:
location /foo { set $my_var ''; # this line is required to create $my_var at config time content_by_lua_block { ngx.var.my_var = 123; ... } }
That is, nginx variables cannot be created on-the-fly.