Redirect 可以在NGINX脚本中处理重定向字符串吗?

Redirect 可以在NGINX脚本中处理重定向字符串吗?,redirect,nginx,Redirect,Nginx,我正在寻找一个“完整的NGINX解决方案”,没有中介重定向。。。但我需要“我的名字解析程序”进行一些外部处理,如图所示的executefantasy: server { server_name resolver.mydomain.com; execute xx = http://localhos:123456/myNameResolver/$request_uri; rewrite ^ http://www.adifferentdomain.com$xx? permanent; }

我正在寻找一个“完整的NGINX解决方案”,没有中介重定向。。。但我需要“我的名字解析程序”进行一些外部处理,如图所示的
execute
fantasy:

server {
  server_name resolver.mydomain.com;
  execute xx = http://localhos:123456/myNameResolver/$request_uri;
  rewrite ^ http://www.adifferentdomain.com$xx? permanent;
}
那么,有可能这样做吗?可能使用一种
fastcgi\u pass
,但只返回一个字符串,而不是绕过所有HTTP解析。

您可以使用,它可以执行命令并在需要时将它们存储在变量中

location / {
  server_name resolver.mydomain.com;
  # Get response via lua script.
  set_by_lua_file $xx 'resolver-script.lua' $request_uri;
  rewrite ^ http://www.adifferentdomain.com$xx? permanent;
}

您只需要一个Lua脚本来完成请求,尝试使用
$request\u uri
作为
arg[1]
,因为它被视为一个命令行参数

,但是LuaModule和用于PHP、Python等的常用Apache模块或Nginx的
fastcgi\u pass
有什么区别呢。?它只是一种“语言风格”,或者HttpLuaModule是Nginx HTTP处理的真正快速补充和低开销?您需要做一些Web服务器不应该做的事情,即在响应本身中嵌入第二个请求响应。这通常是通过某种应用程序完成的,或者使用PHP、Python等。在讨论之前,Lua只是一个“本机”NGINX解决方案。。。如何向
$xx
使用的函数调用发送参数(
$request\u uri
),这是一个很好的答案(!),只是最后的检查。还有一个“本地”NGINX。。。我可以用
set\u by\u js\u file
代替Lua吗?或者这个魔法只由Lua提供?不完全是。看看下面的示例部分,也许它也会对您的解决方案有所帮助。