fun url (x : string ,y) = y ^^ `
| Url | ^(x) |
`
val _ = Page.return "Server Information" (`
| Hostname | ^(Web.Info.hostname()) |
| Pid | ^(Int.toString (Web.Info.pid())) |
| Uptime (seconds) | ^(Int.toString (Web.Info.uptime())) |
| Pageroot | ^(Web.Info.pageRoot()) |
| User | ^(Option.getOpt(Web.Info.getUser(),"")) |
| AuthType | ^(Option.getOpt(Web.Info.getAuthType(),"")) |
Connection Information
| Scheme | ^(Web.Conn.scheme()) |
| Host | ^(Web.Conn.host()) |
| Location | ^(Web.Conn.location()) |
`
^^ (foldl url `` (Web.Conn.url())) ^^
`| Peer | ^(Web.Conn.peer()) |
| Server Port | ^(Int.toString (Web.Conn.port())) |
| Server Name | ^(Web.Conn.server()) |
| Method | ^(Web.Conn.method()) |
| Content Length | ^(Int.toString(Web.Conn.contentLength())) |
Headers Information
| Key | Value |
^(concat(Web.Set.foldr(fn ((k,v),acc) =>
"| " :: k :: " | " :: v :: " |
" :: acc)
nil (Web.Conn.headers())))
Form Data
| Key | Value |
^(case Web.Conn.getQuery()
of SOME s =>
concat(Web.Set.foldr(fn ((k,v),acc) =>
"| " :: k :: " | " :: v :: " |
" :: acc)
nil s)
| NONE => "| No form data |
")
Some Configuration Information
| MailRelay | ^(case Web.Info.configGetValue(Web.Info.Type.String, "MailRelay")
of NONE => " "
| SOME(s) => s) |
| Number of heap caches | ^(Int.toString (Option.valOf
(Web.Info.configGetValue
(Web.Info.Type.Int,"MaxHeapPoolSz")))) |
Request Data
| ^(Web.Conn.getRequestData())
|
`
)