RealityServer Configuration

HTTP Configuration Directives

The following directive configures the RealityServer HTTP server.

http_address

Description Http address to listen on
Syntax http_address [address:]port
Context global
Default none

The address and port number, separated by a colon, or only the port number, where RealityServer accepts client requests. The address 0.0.0.0 means "any interface"; other addresses identify a network interface, which is useful if the host has more than one network card. Port numbers are normally in the range 1024..65535; lower numbers are privileged.

The special port number "0" may be specified and RealityServer will pick a random, available port to use.

On startup a log message is emitted with the system_resource tag and a code value of 32 containing the HTTP server listen address. The webhook log handler facility can then be configured to forward this message to another service to advertise the configured address.

Note that you must specify at least one of http_address or https_address in order for RealityServer to successfully start.

IPv6 addresses need to be surrounded by brackets. The address [::] means "any IPv6 interface".

https_address

Description Https address to listen on with SSL encryption
Syntax https_address [address:]port
Context global
Default none

The address and port number, separated by a colon, or only the port number, where RealityServer accepts client requests. The address 0.0.0.0 means "any interface"; other addresses identify a network interface, which is useful if the host has more than one network card. Port numbers are normally in the range 1024..65535; lower numbers are privileged.

The special port number "0" may be specified and RealityServer will pick a random, available port to use.

On startup a log message is emitted with the system_resource tag and a code value of 33 containing the HTTPS server listen address. The webhook log handler facility can then be configured to forward this message to another service to advertise the configured address.

Note that you must specify at least one of http_address or https_address in order for RealityServer to successfully start.

IPv6 addresses need to be surrounded by brackets. The address [::] means "any IPv6 interface".

https_certificate_file

Description Name of the PEM encoded SSL certificate file
Syntax https_certificate_file [string]
Context global
Default None

Sets the name of the PEM encoded SSL cerficiate file used to identify the server. This is required when using https_address. If relative the path is relative to the configuration file.

https_private_key_file

Description Name of the PEM encoded private key for the SSL certificate file
Syntax https_private_key_file [string]
Context global
Default None

Sets the name of the PEM encoded private key file for the SSL cerficiate file. This is required when using https_address. If relative the path is relative to the configuration file.

https_private_key_password

Description Passphrase to use https_private_key_file
Syntax https_private_key_password [string]
Context global
Default None

The password needed to use the private key file specified by https_private_key_file. This is only required if the private key file has a passphrase.

http_identification

Description HTTP server identification string
Syntax http_identification [string]
Context global
Default RealityServer(R) Web Services

Sets the identification string used as the 'Server' header in HTTP responses. You can disable sending of a Server header entirely by specifying the http_identification directive on its own with no value.

http_send_buffer_size

Description Size of HTPP server send buffer
Syntax http_send_buffer_size size
Context global
Default 0 (OS default)

The HTTP server socket's send buffer size. This can be set to another value than the default operating system send buffer size if the default is not enough which can be the case with high latency connections. Setting it to 0 means falling back to use the OS defaults.

http_keep_alive_timeout

Description HTTP server keep alive timeout
Syntax http_keep_alive_timeout timeout
Context global
Default 0

Set the idle timeout for keep-alive connections in seconds. The default is not to timeout.

http_post_body_limit

Description Maximum size of a post requests body
Syntax http_post_body_limit bytes
Context global
Default 262144

The maximum number of bytes that a non-MIME HTTP POST request can upload to RealityServer.

http_concurrent_connection_limit

Description Maximum number of concurrent connections accepted by the HTTP server
Syntax http_concurrent_connection_limit limit
Context global
Default 256

The maximum number of concurrent connections accepted by the HTTP server. Further connections will be put on the os backlog and serviced only after the number of current connections drops below this value. Note that when even the os backlog is full things works a bit differently depending on OS. Under Linux further connections will be ignored by the server and client will likely time out. Under Windows further connections will be rejected by the server and fail.

disable_default_http_handler

Description Whether to disable the default http handler.
Syntax disable_default_http_handler on|off
Context global
Default off

When turned on, the default HTTP handler which processes requests for static resources and commands will not be installed. In this configuration all commands must be run through the HTTP WebSocket handler and no static content serving is allowed.

websocket_max_payload

Description Maximum size of an individual websocket message
Syntax websocket_max_payload bytes
Context global
Default 2147483648

The maximum number of bytes that an individual web socket message can be.