Mercurial > prosody-modules
changeset 2265:29e3a09275c5
mod_http_hostaliases: Give HTTP hosts additional aliases
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Tue, 09 Aug 2016 14:23:30 +0200 (2016-08-09) |
parents | 463e43dc0c4d |
children | 33a0988e5f1c |
files | mod_http_hostaliases/mod_http_hostaliases.lua |
diffstat | 1 files changed, 17 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mod_http_hostaliases/mod_http_hostaliases.lua Tue Aug 09 14:23:30 2016 +0200 @@ -0,0 +1,17 @@ +module:set_global(); + +local host_map = { }; + +module:wrap_object_event(require "net.http.server"._events, false, function (handlers, event_name, event_data) + local verb, host, path = event_name:match("^(%w+ )(.-)(/.*)"); + host = host_map[host]; + event_name = verb .. host .. path; + return handlers(event_name, event_data); +end); + +function module.add_host(module) + local http_host = module:get_option_string("http_host"); + for host in module:get_option_set("http_host_aliases", {}) do + host_map[host] = http_host; + end +end