39 lines
1.7 KiB
Lua
39 lines
1.7 KiB
Lua
module("luci.controller.nginx-manager", package.seeall)
|
|
|
|
function index()
|
|
nixio.fs.rename ("/etc/nginx/uci.conf", "/etc/nginx/ucibak.conf")
|
|
if not nixio.fs.access("/etc/nginx/nginx.conf") then
|
|
nixio.fs.copyr("/var/lib/nginx/uci.conf", "/etc/nginx/nginx.conf")
|
|
luci.sys.call("/etc/init.d/nginx restart")
|
|
end
|
|
file=nixio.fs.readfile("/etc/uwsgi/vassals/luci-webui.ini")
|
|
if tonumber(file:match("limit%pas[%p%s]+(%d+)")) < 5000 then
|
|
file=file:gsub("limit%pas[%p%s]+(%d+)","limit-as = 5000")
|
|
nixio.fs.writefile("/etc/uwsgi/vassals/luci-webui.ini", file)
|
|
luci.sys.call("/etc/init.d/uwsgi restart")
|
|
end
|
|
nixio.fs.writefile("/etc/config/nginx-manager", "")
|
|
x = luci.model.uci.cursor()
|
|
x:set("nginx-manager", "main", "nginx")
|
|
x:set("nginx-manager", "main", "name", "main")
|
|
x:set("nginx-manager", "main", "filepath", "/etc/nginx/nginx.conf")
|
|
for path in nixio.fs.dir("/etc/nginx/conf.d") do
|
|
if path:find(".conf$") ~= nil then
|
|
name = path:gsub(".conf", "")
|
|
x:set("nginx-manager", name, "nginx")
|
|
x:set("nginx-manager", name, "name", name)
|
|
x:set("nginx-manager", name, "filepath", "/etc/nginx/conf.d/" .. path)
|
|
end
|
|
end
|
|
x:commit("nginx-manager")
|
|
entry({"admin", "services", "nginx-manager"}, cbi("nginx-manager"), _("Nginx Manager"), 95).dependent = true
|
|
entry({"admin", "services", "nginx-manager", "setstatus"}, call("setstatus")).leaf = true
|
|
end
|
|
|
|
function setstatus()
|
|
local e = {}
|
|
local mode = luci.http.formvalue('mode')
|
|
e.code=luci.sys.call("/etc/init.d/nginx " .. mode)
|
|
luci.http.prepare_content("application/json")
|
|
luci.http.write_json(e)
|
|
end |