是否可以根据 Lighttpd 中的时间设置“connection.kbytes-per-second”?
比如晚上 7 点到 11 点之间限制为 250kb/s,凌晨 1 点到 5 点限制为 500kb/s 等?
谢谢!
是否可以根据 Lighttpd 中的时间设置“connection.kbytes-per-second”?
比如晚上 7 点到 11 点之间限制为 250kb/s,凌晨 1 点到 5 点限制为 500kb/s 等?
谢谢!
抱歉耽搁了,我的回答 - lua脚本:
-- If we don't find our "superSecretString" in the request uri, then
if string.find(lighty.env["request.uri"], "superSecretString") == nil then
local hour = os.date("%H")
-- Account for whether or not there are already query variables
if string.find(lighty.env["request.uri"], "?") == nil then
lighty.env["request.uri"] = lighty.env["request.uri"] .. "?superSecretString=" .. hour
else
lighty.env["request.uri"] = lighty.env["request.uri"] .. "&superSecretString=" .. hour
end
-- Restart the request, the script will run again, but return nil.
return lighty.RESTART_REQUEST
end
-- Continue request, the above if already would have ran.
return nil
和配置文件:
server.modules( ..., mod_magnet, ...)
# Match hours 00 through 19
$HTTP["querystring"] =~ ".*superSecretString=[0,1][0-9]" {
connection.kbytes-per-second = 200
}
# Match 20 through 23
$HTTP["querystring"] =~ ".*superSecretString=2[0-3]" {
connection.kbytes-per-second = 100
}
magnet.attract-raw-url-to = ( "<path to lua script file>" )
如果不是很明显,如果有人知道您的“superSecretString”,他们将能够将其短路,但它永远不会离开服务器。
我觉得应该可以从 lua 脚本内部设置连接速度,但我不知道如何设置。
希望这可以帮助。