В некоторых случаях игнорируйте content_by_lua_file и позвольте NGINX сделать всю работу
В моей конфигурации NGINX у меня есть
location /x {
access_by_lua_file auth/auth.lua;
content_by_lua_file auth/content.lua;
}
access_by_lua_file работает нормально. Если я ничего не возвращаю, он продолжает контент_by_lua_file. Я хочу, чтобы он заменял содержимое при определенных обстоятельствах, а в противном случае продолжал и обслуживал статический файл, как если бы директивы content_by_lua_file не существовало.
content.lua выглядит так:
local files_cache = require 'files_cache'
local filePath = ngx.var.file_path
local fileContent = files_cache.load(filePath)
if fileContent ~= nil then
ngx.header["X-Source"] = "Cache"
ngx.say(fileContent)
ngx.status = ngx.HTTP_OK
return ngx.exit(ngx.status)
end