我的网站在/search/
有搜索功能。对于nginx捕获的每个搜索请求,我想运行一个Python脚本,并且根据所述脚本的输出,nginx的行为会有所不同,无论是退出代码还是标准输出。这样的事情(伪代码):
location ~* "/search/(.*)" {
set redirect_request = call "/usr/bin/python /home/me/script.py $1";
if ($redirect_request = 1) {
rewrite ^ /page;
}
}
nginx有什么可能吗?
答案 0 :(得分:0)
据我所知,一般简短的答案是否定的。我想要找到一种方法来保持Nginx非阻塞这种一般类型的外部呼叫是非常困难的。
但是,您可以使用Lua“编写”Nginx脚本。 http://wiki.nginx.org/HttpLuaModule 你会在网上找到很多教程,开发时间很短。有一个专门用于此的模块,遵循nginx哲学。