X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/00a13ad8579e0ee0d950d3b944429551de3bf532..a356587aacf682b584fbbebf7b999154755e80c7:/lib/apache.dtl diff --git a/lib/apache.dtl b/lib/apache.dtl index d80d7ef..1c3b1ad 100644 --- a/lib/apache.dtl +++ b/lib/apache.dtl @@ -5,17 +5,34 @@ extern type web_node; extern val web_node_to_node : web_node -> node; +extern type web_place; +extern val web_place_default : web_node -> web_place; +extern val web_place : web_node -> your_ip -> web_place; +extern val web_place_to_web_node : web_place -> web_node; +extern val web_place_to_node : web_place -> node; +extern val web_place_to_ip : web_place -> ip; +{{Web places are combinations of web nodes (servers on which you are allowed to + run web sites) and IP addresses on which those servers should listen for + requests.}} + context Vhost; {{A WWW virtual host}} extern type suexec_flag; -extern val suexec_flag : bool -> suexec_flag; {{Whether or not to use Suexec with a vhost. -[suexec_flag] fails when passed [false] by a user without the 'www' privilege.}} +For users with the 'www' privilege, this type is identical to [bool]. +For others, it has only one value, [true].}} + +extern type ssl_cert_path; +{{Filesystem path to an SSL certificate in your 'cert' list}} + +extern type ssl; +extern val no_ssl : ssl; +extern val use_cert : ssl_cert_path -> ssl; extern val vhost : host -> Vhost => [Domain] - {WebNodes : [web_node], - SSL : bool, + {WebPlaces : [web_place], + SSL : ssl, User : your_user, Group : your_group, DocumentRoot : your_path, @@ -32,10 +49,16 @@ context Location; extern type location; {{A valid URI prefix}} -extern val location : location -> Vhost & Location => [Vhost & !Location]; +extern val location : location -> ^Vhost & Location => [Vhost & !Location]; extern val directory : your_path -> ^Vhost & Location => [Vhost & !Location]; {{Set some configuration specific to a URI prefix or filesystem directory, respectively.}} -extern val serverAlias : your_domain_host -> [Vhost]; +extern val serverAliasHost : your_domain_host -> [Vhost]; {{Give an alternate hostname for this vhost.}} +extern val serverAlias : host -> [Vhost]; +{{Like serverAliasHost, but adds an alias for the given hostname at every domain + being configured.}} +extern val serverAliasDefault : [Vhost]; +{{Like serverAliasDefault, but adds aliases for the domains being configured + instead of any of their hosts/"subdomains".}}