instance-slave-apache-input-schema.json 6 KB
Newer Older
1 2 3 4 5 6 7 8 9
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-04/schema",

  "title": "Input Parameters",
  "properties": {
    "url": {
      "title": "Backend URL",
      "description": "Url of the backend",
10 11
      "type": "string",
      "pattern": "^(http|https|ftp)://"
12
    },
13 14 15 16 17 18
    "https-url": {
      "title": "HTTPS Backend URL",
      "description": "Url of the backend if it is diferent from url parameter",
      "type": "string",
      "pattern": "^(http|https|ftp)://"
    },
19 20 21 22
    "custom_domain": {
      "title": "Custom Domain",
      "description": "Custom Domain to use for the website",
      "type": "string",
23
      "pattern": "^([a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,6}$"
24
    },
25 26 27 28 29 30 31

    "server-alias": {
      "title": "Server Alias",
      "description": "Server Alias List separated by space",
      "type": "string",
      "default": ""
    },
32 33
    "type": {
      "title": "Backend Type",
34
      "description": "Type of slave. If redirect, the slave will redirect to the given url. If zope, the rewrite rules will be compatible with Virtual Host Monster",
35 36
      "type": "string",
      "default": "",
37
      "enum": ["", "zope", "redirect", "notebook", "eventsource"]
38 39 40 41 42 43 44 45 46
    },

    "path": {
      "title": "Backend Path",
      "description": "Path to proxy to in the backend",
      "type": "string",
      "default": ""
    },

47 48
    "default-path": {
      "title": "Default Path",
49
      "description": "Provide default path to redirect user to when user access / (the site root)",
50 51 52 53
      "type": "string",
      "default": ""
    },

54 55
    "ssl_crt": {
      "title": "SSL Certificate",
56
      "description": "Content of the SSL Certificate file",
57
      "type": "string",
58
      "textarea": true,
59 60 61 62
      "default": ""
    },
    "ssl_key": {
      "title": "SSL Key",
63
      "description": "Content of the SSL Key file",
64
      "type": "string",
65
      "textarea": true,
66 67 68 69 70
      "default": ""
    },

    "ssl_ca_crt": {
      "title": "SSL Certificate Authority's Certificate",
71
      "description": "Content of the CA certificate file",
72
      "type": "string",
73
      "textarea": true,
74 75 76 77
      "default": ""
    },
    "https-only": {
      "title": "HTTPS Only",
78
      "description": "If set to true, http requests will be redirected to https",
79 80 81 82 83
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

84 85
    "ssl-proxy-verify": {
      "title": "Verify Backend Certificates",
86
      "description": "If set to true, Backend SSL Certificates will be checked and frontend will refuse to proxy if certificate is invalid",
87 88 89 90 91 92 93
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

    "ssl_proxy_ca_crt": {
      "title": "SSL Backend Authority's Certificate",
94
      "description": "Content of the SSL Certificate Authority file of the backend (to be used with ssl-proxy-verify)",
95 96 97 98
      "type": "string",
      "default": ""
    },

99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
    "monitor-ipv6-test": {
      "title": "IPv6 Address to Monitor Packet Lost",
      "description": "IPv6 Address for the frontend keep monitoring with ping6 (without brackets)",
      "type": "string",
      "default": ""
    },

    "monitor-ipv4-test": {
      "title": "IPv4 Address to Monitor Packet Lost",
      "description": "IPv4 Address for the frontend keep monitoring with ping",
      "type": "string",
      "default": ""
    },

    "re6st-optimal-test": {
      "title": "IPv6 and IPv4 Address to test Re6st",
      "description": "IPv6 and IPv6 Address for the frontend test if re6st is on the optimal status (use ipv6,ipv4)",
      "type": "string",
      "default": ""
    },

120 121
    "enable_cache": {
      "title": "Enable Cache",
122
      "description": "If set to true, http caching server (Apache Traffic Server) will be used between frontend apache and backend",
123 124 125 126
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },
127 128 129

    "disable-no-cache-request": {
      "title": "Disable 'no-cache' requests",
130
      "description": "If set to true, Cache-Control and Pragma requests headers will not be sent to cache and backend servers. This prevents clients from bypassing cache when enable_cache is true",
131 132 133 134 135
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

136 137
    "disable-via-header": {
      "title": "Disable 'Via' headers from cache",
138
      "description": "If set to true, Via response headers will not be sent to client",
139 140 141 142
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },
143 144 145 146 147 148 149
    "enable-http2": {
      "title": "Enable HTTP2 Protocol",
      "description": "Use HTTP2 Protocol for the site",
      "type": "string",
      "default": "true",
      "enum": ["true", "false"]
    },
150 151
    "prefer-gzip-encoding-to-backend": {
      "title": "Prefer gzip Encoding for Backend",
152
      "description": "If set to true, frontend will rewrite Accept-Encoding request header to simply 'gzip' for all variants of Accept-Encoding containing 'gzip', in order to maximize cache hits for resources cached with Vary: Accept-Encoding when enable_cache is used",
153 154 155 156 157 158 159
      "type": "string",
      "default": "false",
      "enum": ["false", "true"]
    },

    "disabled-cookie-list": {
      "title": "Disabled Cookies",
160
      "description": "List of Cookies separated by space that will not be sent to cache and backend servers. This is especially useful to discard analytics tracking cookies when using Vary: Cookie cache headers",
161 162 163 164
      "type": "string",
      "default": ""
    },

165 166
    "apache_custom_http": {
      "title": "HTTP configuration",
167
      "description": "Raw http configuration in python template format. Your site will be rejected if you use it without notification and approval of frontend administrators",
168
      "default": "",
169
      "textarea": true,
170 171 172 173
      "type": "string"
    },
    "apache_custom_https": {
      "title": "HTTPS configuration",
174
      "description": "Raw https configuration in python template format. Your site will be rejected if you use it without notification and approval of frontend administrators",
175
      "default": "",
176
      "textarea": true,
177 178 179 180
      "type": "string"
    }
  }
}