--- version: 1.1 revprox: # Reverse proxy client_server_domainname: type: domainname hidden: true supplier: ReverseProxy client_server_ip: type: ip default: jinja: >- {{ zones | get_ip(general.revprox.client_server_domainname) }} params: zones: information: zones hidden: true client_http: default: false hidden: true client_port: type: port default: '443' hidden: true client_cert_owner: type: unix_user default: root hidden: true client: description: Clients configuration type: leadership external_domainnames: description: Service external domain name examples: - service.example.net type: domainname unique: false supplier: ReverseProxy:external location: description: URI to route request to the correct service mode: basic type: unix_filename default: / supplier: ReverseProxy:location max_body_size: description: The maximum allowed size of the client request body mandatory: false supplier: ReverseProxy:max_body_size is_websocket: type: boolean default: false hidden: true supplier: ReverseProxy:websocket local_location: type: unix_filename mandatory: false hidden: true web_address: type: web_address default: jinja: >- {%- set domain_name = general.network.interface_0.domain_name -%} {%- if domain_name and __.client_port -%} {%- set web_address = 'http' %} {%- if not __.client_http -%} {%- set web_address = web_address + 's' %} {%- endif -%} {%- set web_address = web_address + '://' + domain_name -%} {%- if (__.client_http and __.client_port != '80' ) or (not __.client_http and __.client_port != '443') -%} {%- set web_address = web_address + ':' + __.client_port -%} {%- endif -%} {%- if _.local_location -%} {%- set web_address = web_address + _.local_location -%} {%- endif -%} {{ web_address }} {%- endif -%} description: >- calculating web_address with domain_name, client_port and local_location hidden: true supplier: ReverseProxy:url http: default: false hidden: true supplier: ReverseProxy:http