43 lines
796 B
Lua
Executable File
43 lines
796 B
Lua
Executable File
#!/usr/bin/lua
|
|
|
|
local uci = require('simple-uci').cursor()
|
|
|
|
|
|
local function get_mem_total()
|
|
for line in io.lines('/proc/meminfo') do
|
|
local match = line:match('^MemTotal:%s+(%d+)')
|
|
if match then
|
|
return tonumber(match)
|
|
end
|
|
end
|
|
end
|
|
|
|
local max_requests = 32
|
|
if get_mem_total() < 48*1024 then
|
|
max_requests = 16
|
|
end
|
|
|
|
uci:section('uhttpd', 'uhttpd', 'main', {
|
|
listen_http = { '0.0.0.0:80', '[::]:80' },
|
|
listen_https = {},
|
|
|
|
home = '/lib/gluon/status-page/www',
|
|
max_requests = max_requests,
|
|
})
|
|
uci:save('uhttpd')
|
|
|
|
|
|
for _, zone in ipairs({'mesh', 'loc_client'}) do
|
|
uci:section('firewall', 'rule', zone .. '_http', {
|
|
src = zone,
|
|
dest_port = '80',
|
|
proto = 'tcp',
|
|
target = 'ACCEPT',
|
|
})
|
|
end
|
|
|
|
-- ToDo remove in v2022.x
|
|
uci:delete('firewall', 'local_client_http')
|
|
|
|
uci:save('firewall')
|