Commit | Line | Data |
---|---|---|
8a7c40fa AC |
1 | {{Apache web server configuration}} |
2 | ||
60695e99 AC |
3 | extern type web_node; |
4 | {{Nodes that accept Apache configuration from you}} | |
5 | ||
6 | extern val web_node_to_node : web_node -> node; | |
7 | ||
128e7b0b AC |
8 | extern type web_place; |
9 | extern val web_place_default : web_node -> web_place; | |
10 | extern val web_place : web_node -> your_ip -> web_place; | |
11 | extern val web_place_to_web_node : web_place -> web_node; | |
12 | extern val web_place_to_node : web_place -> node; | |
13 | extern 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 | ||
8a7c40fa AC |
18 | context Vhost; |
19 | {{A WWW virtual host}} | |
20 | ||
00a13ad8 | 21 | extern type suexec_flag; |
00a13ad8 | 22 | {{Whether or not to use Suexec with a vhost. |
434a7b1f AC |
23 | For users with the 'www' privilege, this type is identical to [bool]. |
24 | For others, it has only one value, [true].}} | |
25 | ||
26 | extern type ssl_cert_path; | |
27 | {{Filesystem path to an SSL certificate in your 'cert' list}} | |
28 | ||
29 | extern type ssl; | |
30 | extern val no_ssl : ssl; | |
31 | extern val use_cert : ssl_cert_path -> ssl; | |
00a13ad8 | 32 | |
8a7c40fa | 33 | extern val vhost : host -> Vhost => [Domain] |
ae272cb5 AC |
34 | {WebPlaces : [web_place], |
35 | SSL : ssl, | |
36 | User : your_user, | |
37 | Group : your_group, | |
38 | DocumentRoot : your_path, | |
39 | ServerAdmin : email, | |
40 | SuExec : suexec_flag}; | |
f8dfbbcc AC |
41 | {{Add a new named Apache virtual host, specifying which nodes' Apache servers |
42 | should answer requests for this host, whether it should use SSL, what UNIX | |
43 | user and group dynamic content generators should be run as, the filesystem | |
44 | path to the static content root, and the e-mail address to which error pages | |
45 | should direct visitors.}} | |
2882ee37 | 46 | |
57e066bb AC |
47 | extern val vhostDefault : Vhost => [Domain] |
48 | {WebPlaces : [web_place], | |
49 | SSL : ssl, | |
50 | User : your_user, | |
51 | Group : your_group, | |
52 | DocumentRoot : your_path, | |
53 | ServerAdmin : email, | |
54 | SuExec : suexec_flag}; | |
55 | {{Like <tt>vhost</tt>, but for, e.g., <tt>yourdomain.com</tt> instead of | |
56 | <tt>www.yourdomain.com</tt>}} | |
57 | ||
2882ee37 AC |
58 | context Location; |
59 | ||
60 | extern type location; | |
61 | {{A valid URI prefix}} | |
62 | ||
36578c0c | 63 | extern val location : location -> ^Vhost & Location => [Vhost & !Location]; |
2882ee37 AC |
64 | extern val directory : your_path -> ^Vhost & Location => [Vhost & !Location]; |
65 | {{Set some configuration specific to a URI prefix or filesystem directory, | |
66 | respectively.}} | |
edd38024 | 67 | |
5210d78d | 68 | extern val serverAliasHost : your_domain_host -> [Vhost]; |
edd38024 | 69 | {{Give an alternate hostname for this vhost.}} |
5210d78d | 70 | extern val serverAlias : host -> [Vhost]; |
e519d696 AC |
71 | {{Like serverAliasHost, but adds an alias for the given hostname at every domain |
72 | being configured.}} | |
5210d78d | 73 | extern val serverAliasDefault : [Vhost]; |
e519d696 AC |
74 | {{Like serverAliasDefault, but adds aliases for the domains being configured |
75 | instead of any of their hosts/"subdomains".}} |