apache: use HTTP for mod_auth_kerb service principal
[hcoop/domtool2.git] / lib / apache.dtl
... / ...
CommitLineData
1{{Apache web server configuration}}
2
3extern type web_node;
4{{Nodes that accept Apache configuration from you}}
5
6extern val web_node_to_node : web_node -> node;
7
8extern type web_place;
9extern val web_place_default : web_node -> web_place;
10extern val web_place : web_node -> your_ip -> web_place;
11extern val web_place_to_web_node : web_place -> web_node;
12extern val web_place_to_node : web_place -> node;
13extern val web_place_to_ip : web_place -> ip;
14{{Web places are combinations of web nodes (servers on which you are allowed to
15 run web sites) and IP addresses on which those servers should listen for
16 requests.}}
17
18context Vhost;
19{{A WWW virtual host}}
20
21extern type suexec_flag;
22{{Whether or not to use Suexec with a vhost.
23For users with the 'www' privilege, this type is identical to [bool].
24For others, it has only one value, [true].}}
25
26extern type ssl_cert_path;
27{{Filesystem path to an SSL certificate in your 'cert' list}}
28
29extern type ssl_cacert_path;
30{{Filesystem path to an intermediate CA certificate in your 'cacert' list}}
31
32extern type ssl;
33extern val no_ssl : ssl;
34extern val use_cert : ssl_cert_path -> ssl;
35
36extern type php_version;
37extern val fast_php : php_version;
38{{FastCGI based php5. Much faster than regular php5.}}
39
40extern val vhost : host -> Vhost => [Domain]
41 {WebPlaces : [web_place],
42 SSL : ssl,
43 User : your_user,
44 Group : your_group,
45 DocumentRoot : your_path,
46 ServerAdmin : email,
47 SuExec : suexec_flag,
48 PhpVersion : php_version};
49{{Add a new named Apache virtual host, specifying which nodes' Apache servers
50 should answer requests for this host, whether it should use SSL, what UNIX
51 user and group dynamic content generators should be run as, the filesystem
52 path to the static content root, and the e-mail address to which error pages
53 should direct visitors.}}
54
55extern val vhostDefault : Vhost => [Domain]
56 {WebPlaces : [web_place],
57 SSL : ssl,
58 User : your_user,
59 Group : your_group,
60 DocumentRoot : your_path,
61 ServerAdmin : email,
62 SuExec : suexec_flag,
63 PhpVersion : php_version};
64{{Like <tt>vhost</tt>, but for, e.g., <tt>yourdomain.com</tt> instead of
65 <tt>www.yourdomain.com</tt>}}
66
67context Location;
68
69extern type location;
70{{A valid URI prefix}}
71
72extern val location : location -> ^Vhost & Location => [Vhost & !Location];
73extern val directory : your_path -> ^Vhost & Location => [Vhost & !Location];
74{{Set some configuration specific to a URI prefix or filesystem directory,
75 respectively.}}
76
77extern type regexp;
78{{PCRE regular expression}}
79
80extern val filesMatch : regexp -> ^Vhost & Location => [Vhost & !Location];
81{{Mark nested configuration to only apply to filenames matching the regexp.}}
82
83extern val serverAliasHost : your_domain_host -> [Vhost];
84{{Give an alternate hostname for this vhost.}}
85extern val serverAlias : host -> [Vhost];
86{{Like serverAliasHost, but adds an alias for the given hostname at every domain
87 being configured.}}
88extern val serverAliasDefault : [Vhost];
89{{Like serverAliasDefault, but adds aliases for the domains being configured
90 instead of any of their hosts/"subdomains".}}
91
92extern val testNoHtaccess : [Location];
93
94extern val sslCertificateChainFile : ssl_cacert_path -> [Vhost];
95{{Intermediate file to serve as part of the chain of authority for
96 your ssl certificate}}