У вас не возникало необходимости из nginx обратиться к redis?У меня появилось необходимость это сделать, что бы прочитать сессионный ключ пользователя из кук, затем обратится к redis, он обрабатывает php-сессии, чтобы получить id пользователя из сессии по этому ключу, если он есть, а затем сравнить его с id из URL и решить можно ли отдавать пользователю это изображение или вернуть 403.
Я собрал модули
http-redis https://build.opensuse.org/package/show/home:13ilya/nginx-mo...
и
redis2 https://build.opensuse.org/package/show/home:13ilya/nginx-mo...,
но они, к сожалению, оказались бесполезными для этой задачи.
http-redis используется только для кеширования и может только получить по ключу данные и целиком их отправить в stdout,
а redis2 может только сохранять, так как при получение каких-либо данных он эти данные вместе с отладочной информацией, аналогичной при работе с redis-cli сразу отправляет в stdout и их не возможно сохранить в переменную и обработать для принятия дальнейшего решения.
Я так понял, единственный выход это сделать через OpenResty или модуль lua.
OpenResty, почему-то не собирает ни один дистрибутив, не смотря на совместимую с GPL лицензию, и предлагается подключать сторонние репозитории, в которых даже nginx поставлается свой. Этот вариант мне не очень нравится, но даже так там нет репозитория для OpenSUSE Tumbleweed, только для openSUSE Leap.
Попробовал для начала собрать lua модуль сам https://build.opensuse.org/package/show/home:13ilya/nginx-mo...
и запнулся над тем, что ему нужен luajit с поддержкой FFI
checking for Lua language 5.1 ... found
checking for LuaJIT has FFI ... not found
./configure: error: unsupported LuaJIT build; ngx_http_lua_module requires LuaJIT with FFI enabled.
При этом в апстиме сказано что поддержка FFI включена по умолчанию,
https://luajit.org/ext_ffi_tutorial.html
и в downstream я не нашёл её отключения.
https://build.opensuse.org/package/show/devel:languages:lua/...
На этом пока и запнулся. :-(
Может у вас есть опыт со сборкой OpenResty или тем как решить подобную задачу обращения nginx к redis?