Lors de la création d'une variable à partir du nom du serveur dans Nginx et de l'appel d'un point de terminaison différent à l'aide de ngx.location.capture, la variable est alors supprimée.Les noms des variables Nginx sont perdus entre les captures OpenResty
L'exemple suivant montre en appelant testlocalhost et acclocalhost:
server {
listen 1003;
server_name ~^(?<name>test|acc)localhost$; #<-Name is set here
location/{
#return 200 $name; #This would return the expected test or acc
content_by_lua 'local options = {
method = ngx.HTTP_GET,
}
local res = ngx.location.capture("/internal", options)
ngx.say(res.body)';
}
location /internal {
return 200 $name; #<- Name is empty here
}
}
Est-il possible de maintenir la variable entre les points d'extrémité sans modifier le corps ou en utilisant des paramètres d'URL?