X-Git-Url: http://git.hcoop.net/hcoop/zz_old/domtool2-proto.git/blobdiff_plain/9b3f6729c6be5bab8440341e2a4d3a04b474c010..940e3663168fb7dac30a238d7a33a8c69a6c6f9b:/lib/easy_domain.dtl diff --git a/lib/easy_domain.dtl b/lib/easy_domain.dtl index aef0232..952bcfb 100644 --- a/lib/easy_domain.dtl +++ b/lib/easy_domain.dtl @@ -10,14 +10,40 @@ val webAt = (dns (dnsA host (ip_of_node (web_node_to_node n))); vhost host where - WebNodes = [n] + WebPlaces = [web_place_default n] with config end); val web = webAt web_node; -val domNoDefaultAlias = +val webAtIp = + \ ip : (your_ip) -> + \ host : (host) -> + \\ config : Vhost -> begin + dns (dnsA host (your_ip_to_ip ip)); + + vhost host where + WebPlaces = [web_place web_node ip] + with + config + end + end; + +val addCatchAllAlias = begin + mailbox <- Mailbox; + catchAllAlias mailbox +end; + +val addWww = begin + web "www" with + serverAliasDefault; + www : [Vhost] <- WWW; + www + end +end; + +val domNoWwwNoDefaultAlias = \ d : (your_domain) -> \\ config : Domain -> domain d with @@ -29,22 +55,31 @@ val domNoDefaultAlias = handleMail; dns (dnsMX 1 "deleuze.hcoop.net"); - web "www" with - serverAliasDefault; - www : [Vhost] <- WWW; - www - end; - config end; +val domNoDefaultAlias = + \ d : (your_domain) -> + \\ config : Domain -> + domNoWwwNoDefaultAlias d with + addWww; + config + end; + +val domNoWww = + \ d : (your_domain) -> + \\ config : Domain -> + domNoWwwNoDefaultAlias d with + config; + addCatchAllAlias; + end; + val dom = \ d : (your_domain) -> \\ config : Domain -> domNoDefaultAlias d with config; - mailbox <- Mailbox; - defaultAlias mailbox; + addCatchAllAlias; end; val nameserver = \host -> dns (dnsNS host);