Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Encore expects a runtime instance to be available behind the /runtime URL. This can be routed to any runtime instance of the same Blueriq major version through a reverse proxy. When using the Blueriq installer this works out of the box using IIS as reverse proxy, but this can be achieved in any environment.

...

The exact configuration depends on the reverse proxy that is being used. This section aims to document the general setup for a limited set of reverse proxies.

UI Tabs
UI Tab
titleIIS

It is assumed that only Studio was selected during the installation process, meaning the runtime was not installed.

When using IIS, 

In IIS,

the Application Request Routing module needs to be installed to configure proxy redirect rules. Within the IIS manager application, a virtual site for the Runtime needs to be created:

Image Modified

Use "runtime" as Alias name and choose a filesystem directory to represent this virtual directory (this is the location where IIS stores the configuration file). Open the chosen directory in Windows Explorer and edit the Web.config file as follows:

Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <remove name="ReverseProxyInboundRule1" />
                <rule name="ReverseProxyInboundRule1" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{CACHE_URL}" pattern="^(https?)://" />
                    </conditions>
                    <action type="Rewrite" url="http://RUNTIME_URL:RUNTIME_PORT/runtime/{R:1}"/>					
                    <serverVariables>
                        <set name="HTTP_X_FORWARDED_HOST" value="{HTTP_HOST}" />
                        <set name="HTTP_X_FORWARDED_PROTO" value="{C:1}" />
                        <set name="HTTP_X_FORWARDED_FOR" value="{REMOTE_ADDR}" />
                    </serverVariables>	
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

Change the RUNTIME_URL:RUNTIME_PORT segment as needed.

In IIS Manager, select "runtime", then go to "URL Rewrite", then to "View server variables..." on the right, and add a server variable named "HTTP_X_FORWARDED_FOR".

In IIS Manager, select the Site that the virtual directory is part of and click "Restart" in the right hand side toolbar:

Image Modified

UI Tab
titlenginx

Change the RUNTIME_URL:RUNTIME_PORT segment as needed. Restart nginx for the changes to take effect.

Code Block
http {
    upstream revProxyRuntime {
        # URL and port where the Blueriq Runtime Server is deployed
        # NOTE: This should not include the protocol "http://", only the hostname:port should be configured here.
        server RUNTIME_URL:RUNTIME_PORT;
    }

    server {
        location /runtime/ {
            # Context path where the Blueriq Runtime is running under, this should only be enable if the context path is different than /Runtime
            # rewrite /Runtime/(.*) /CONTEXT_PATH/$1;

            chunked_transfer_encoding off;
            proxy_buffering off;
            proxy_cache off;
            proxy_pass http://revProxyRuntime;
        }
    }
}