openresty-config/lua/switchbackend.lua
2025-02-11 20:13:49 -03:00

22 lines
634 B
Lua

-- TODO: Support Clear, TOR and I2P
local args = ngx.req.get_uri_args()
local referer = ngx.req.get_headers()["Referer"]
local host = ngx.req.get_headers()["Host"]
local cookie_name = "INVIDIOUS_SERVER_ID"
local domain = ".nadeko.net"
-- TOR Support
if string.match(host, ".onion") then
domain = host
end
for key, server_index in pairs(args) do
if key == "backend_id" then
ngx.header["Set-Cookie"] = cookie_name .. "=" .. server_index .. "; domain=" .. domain .. "; Path=/; HttpOnly; SameSite=None; Secure; Partitioned"
end
end
if referer == nil then
return ngx.redirect("/", 302)
end
return ngx.redirect(referer, 302)