Я хотел бы общаться с redis из nginx, чтобы хранить в списках, какие запросы были сделаны на изображениях, особенно на изображениях, которые не найдены, проксированные на другом сервере.Добавить ключ/значение в Redis в Nginx
Я установил 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
и redis2_pass
, изображения будут отображаться правильно.
Заранее благодарим за вашу помощь!
Почему эта проблема? Это потому, что вы получаете ответы в HTTP? Совсем не совместимо с этим модулем nginx, поэтому просто пытайтесь понять проблему, чтобы узнать, могу ли я помочь. – bitoiu
потому что я хочу, чтобы nginx возвращал изображение, а не целое число, являющееся результатом запроса redis ... –
Я не лучший человек, чтобы помочь, так что это случайное. Но поможет ли это просто закончить метод 'location' с помощью' $ uri'? – bitoiu