我想从 nginx 与 redis 通信,以便将已对图像发出的请求存储在列表中,尤其是在未在另一台服务器上代理的图像上。
我安装了 OpenResty,以便使用redis2_query
和redis2_pass
命令。
这是我的 nginx 配置:
location ~* \.(jpg|jpeg|gif|png)$ {
try_files $uri @imagenotfound;
redis2_query lpush founds $uri;
redis2_pass 127.0.0.1:6379;
}
location @imagenotfound {
proxy_pass http://imgdomain.com/$uri;
proxy_set_header Host imgdomain.com;
proxy_set_header Server imgdomain.com;
redis2_query lpush notfounds $uri;
redis2_pass 127.0.0.1:6379;
}
我提出的每个请求都返回一个整数,并且据我所知,redis2_pass
返回查询的结果。无论如何不返回此结果而只执行查询?
如果我删除redis2_query
and redis2_pass
,图像将正确显示。
在此先感谢您的帮助!