49 lines
1.3 KiB
Lua
Executable File
49 lines
1.3 KiB
Lua
Executable File
#!/usr/bin/env lua
|
|
require("luci.httpd")
|
|
require("luci.httpd.server")
|
|
require("luci.httpd.handler.file")
|
|
require("luci.httpd.handler.luci")
|
|
|
|
SYSROOT = arg[1]
|
|
DOCROOT = SYSROOT .. arg[2]
|
|
PORT = 8080
|
|
|
|
collectgarbage("setpause", 150)
|
|
|
|
serversocket = luci.httpd.Socket("0.0.0.0", PORT)
|
|
|
|
server = luci.httpd.server.Server()
|
|
vhost = luci.httpd.server.VHost()
|
|
|
|
server:set_default_vhost(vhost)
|
|
|
|
pcall(function()
|
|
require "uci"
|
|
require "luci.model.uci".cursor = function(config, save)
|
|
return uci.cursor(config or SYSROOT .. "/etc/config", save or SYSROOT .. "/tmp/.uci")
|
|
end
|
|
|
|
local x = require "luci.uvl".UVL.__init__
|
|
require "luci.uvl".UVL.__init__ = function(self, schemedir)
|
|
x(self, schemedir or SYSROOT .. "/lib/uci/schema")
|
|
end
|
|
end)
|
|
|
|
require("luci.sys")
|
|
luci.sys.user.checkpasswd = function() return true end
|
|
|
|
|
|
filehandler = luci.httpd.handler.file.Simple(DOCROOT)
|
|
vhost:set_default_handler(filehandler)
|
|
|
|
lucihandler = luci.httpd.handler.luci.Luci()
|
|
vhost:set_handler("/luci", lucihandler)
|
|
|
|
io.stderr:write("Starting LuCI HTTPD on port " .. PORT .. "...\n")
|
|
io.stderr:write("Point your browser to http://localhost:" .. PORT .. "/luci\n")
|
|
|
|
--daemon = luci.httpd.Daemon()
|
|
--daemon.debug = true
|
|
luci.httpd.register(serversocket, server:create_daemon_handlers())
|
|
luci.httpd.run()
|