return function (connection, args)
connection:send("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\nCache-Control: private, no-store\r\n\r\n")
connection:send('
Server File Listing')
connection:send('')
connection:send('Server File Listing
')
connection:send("\n")
for name, size in pairs(file.list()) do
local isHttpFile = string.match(name, "(http/)") ~= nil
if isHttpFile then
local url = string.match(name, ".*/(.*)")
connection:send(' - ' .. url .. " (" .. size .. " bytes)
\n")
-- this list could be very long, so we'll yield in order to avoid overflowing the send buffer.
coroutine.yield()
end
end
connection:send("
\n")
connection:send('')
end