1 local cache = ngx.shared.ceryx
2 local client_ip = ngx.var.remote_addr
3 local uri = ngx.var.uri
4 if uri == "/iui/framework/login.html" then
5 local value, flags = cache:get(client_ip)
9 ngx.redirect("/iui/framework/main-page.html")
13 local referer = ngx.var.http_referer
15 "/iui/framework/login.html",
16 "/iui/framework/css/login.css",
17 "/iui/component/thirdparty/font%-awesome/css/font%-awesome.min.css",
18 "/iui/framework/css/style%-custom.css"
20 local function referer_matches(t, r)
21 for k,_ in pairs(t) do
22 if string.match(r, t[k]) then
29 if referer and referer_matches(refererList, referer) then
33 local succ, err, forcible = cache:replace(client_ip, "place_holder", 3600)
35 if err == 'not found' then
36 ngx.log(ngx.WARN, "access record not found for "..client_ip..",redirect to login page")
37 ngx.redirect("/iui/framework/login.html")
39 ngx.log(ngx.WARN, err)