{{Apache web server configuration}} extern type web_node; {{Nodes that accept Apache configuration from you}} extern val web_node_to_node : web_node -> node; context Vhost; {{A WWW virtual host}} extern type suexec_flag; {{Whether or not to use Suexec with a vhost. 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 : ssl, User : your_user, Group : your_group, DocumentRoot : your_path, ServerAdmin : email, SuExec : suexec_flag}; {{Add a new named Apache virtual host, specifying which nodes' Apache servers should answer requests for this host, whether it should use SSL, what UNIX user and group dynamic content generators should be run as, the filesystem path to the static content root, and the e-mail address to which error pages should direct visitors.}} context Location; extern type location; {{A valid URI prefix}} 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]; {{Give an alternate hostname for this vhost.}}