Specify if slave instance should use a varnish / stunnel to connect to backend.
Specify if slave instance should use a squid to connect to backend.
Possible values: "true", "false".
Its presence in slave parameter enable the cache for the slave
"enable_cache" is an optional parameter. Defaults to "false".
"enable_cache" is an optional parameter.
Example: true
type
type
~~~~
~~~~
...
@@ -111,10 +130,10 @@ Possible values: "zope", "default".
...
@@ -111,10 +130,10 @@ Possible values: "zope", "default".
"type" is an optional parameter. Defaults to "default".
"type" is an optional parameter. Defaults to "default".
Example: zope
Example: zope
custom_domain
domain (former custom_domain)
~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Domain name to use as frontend. The frontend will be accessible from this domain.
Domain name to use as frontend. The frontend will be accessible from this domain.
"custom_domain" is an optional parameter. Defaults to
"domain" is an optional parameter. Defaults to
[instancereference].[masterdomain].
[instancereference].[masterdomain].
Example: www.mycustomdomain.com
Example: www.mycustomdomain.com
...
@@ -122,8 +141,8 @@ https-only
...
@@ -122,8 +141,8 @@ https-only
~~~~~~~~~~
~~~~~~~~~~
Specify if website should be accessed using https only. If so, the frontend
Specify if website should be accessed using https only. If so, the frontend
will redirect the user to https if accessed from http.
will redirect the user to https if accessed from http.
Possible values: "true", "false".
Its presence in parameters enable its functionality.
This is an optional parameter. Defaults to false.
This is an optional parameter.
path
path
~~~~
~~~~
...
@@ -135,14 +154,73 @@ VirtualHostMonster.
...
@@ -135,14 +154,73 @@ VirtualHostMonster.
"path" is an optional parameter, ignored if not specified.
"path" is an optional parameter, ignored if not specified.
Example of value: "/erp5/web_site_module/hosting/"
Example of value: "/erp5/web_site_module/hosting/"
Slave Instance Parameters (custom-personal)
-------------------------------------------
apache_custom_https
~~~~~~~~~~~~~~~~~~~
Raw apache configuration in python template format (i.e. write "%%" for one "%") for the slave listening to the https port. Its content will be templatified in order to access functionalities such as cache access, ssl certificates... The list is available above.
apache_custom_http
~~~~~~~~~~~~~~~~~~
Raw apache configuration in python template format (i.e. write "%%" for one "%") for the slave listening to the http port. Its content will be templatified in order to access functionalities such as cache access, ssl certificates... The list is available above
url
~~~
Necesarry to activate cache. url of backend to use.
"url" is an optional parameter.
Example: http://mybackend.com/myresource
domain
~~~~~~
Necesarry to activate cache. The frontend will be accessible from this domain.
"domain" is an optional parameter.
Example: www.mycustomdomain.com
enable_cache
~~~~~~~~~~~~
Necesarry to activate cache.
"enable_cache" is an optional parameter.
ssl_key, ssl_crt, ssl_ca_crt, ssl_crs
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SSL certificates of the slave.
They are optional.
Functionalities for apache configuration:
In the slave apache configuration you can use parameters that will be replaced during instanciation. They should be entered as python templates parameters ex:" %(parameter)s"
* cache_access : url of the cache. Should replace backend url in configuration to use the cache
* error_log : path of the slave error log in order to log in a deferenciated file.
* error_log : path of the slave access log in order to log in a deferenciated file.
* ssl_key, ssl_crt, ssl_ca_crt, ssl_crs : path of the certificates given in slave instance parameters
Slave Instance Parameters (custom-group)
----------------------------------------
url
~~~
Necesarry to activate cache. url of backend to use.
"url" is an optional parameter.
Example: http://mybackend.com/myresource
domain
~~~~~~
Domain name to use as frontend. The frontend will be accessible from this domain.
"domain" is an optional parameter necessary to activate cache. Defaults to
[instancereference].[masterdomain].
Example: www.mycustomdomain.com
The rest of the parameters are defined by templates given to the master and accessible by the slave_parameter dict in it.
Examples
Examples
========
========
Here are some example of how to make your SlapOS service available through
Here are some example of how to make your SlapOS service available through
an already deployed frontend.
an already deployed frontend.
Simple Example
Simple Example (default)
--------------
------------------------
Request slave frontend instance so that https://[1:2:3:4:5:6:7:8]:1234 will be
Request slave frontend instance so that https://[1:2:3:4:5:6:7:8]:1234 will be
redirected and accessible from the proxy::
redirected and accessible from the proxy::
...
@@ -157,8 +235,8 @@ redirected and accessible from the proxy::
...
@@ -157,8 +235,8 @@ redirected and accessible from the proxy::
)
)
Zope Example
Zope Example (default)
------------
----------------------
Request slave frontend instance using a Zope backend so that
Request slave frontend instance using a Zope backend so that
https://[1:2:3:4:5:6:7:8]:1234 will be redirected and accessible from the
https://[1:2:3:4:5:6:7:8]:1234 will be redirected and accessible from the
...
@@ -175,8 +253,8 @@ proxy::
...
@@ -175,8 +253,8 @@ proxy::
)
)
Advanced example
Advanced example (default)
----------------
--------------------------
Request slave frontend instance using a Zope backend, with Varnish activated,
Request slave frontend instance using a Zope backend, with Varnish activated,
listening to a custom domain and redirecting to /erp5/ so that
listening to a custom domain and redirecting to /erp5/ so that
...
@@ -192,7 +270,197 @@ the proxy::
...
@@ -192,7 +270,197 @@ the proxy::
"enable_cache":"true",
"enable_cache":"true",
"type":"zope",
"type":"zope",
"path":"/erp5",
"path":"/erp5",
"custom_domain":"mycustomdomain.com",
"domain":"mycustomdomain.com",
}
)
Simple Example (custom-personal)
--------------------------------
Request slave frontend instance so that https://[1:2:3:4:5:6:7:8]:1234 will be