User Tools

Site Tools


Configure Apache as a Proxy Server for an EASA cluster

This page describes a reference implementation for an Apache proxy server running https behind a firewall which manages connections to an EASA Server and two EASAP (or historically 'JSF') Servers.

The machine names are:

  • uapache
  • easaservername
  • jsf1servername
  • jsf2servername

Apache is running https listening on ports 8443, 8081, 8082.

The EASA machines are all running http listening on port 8080.

An Author or User will only interact with the Apache proxy server.

This example is for linux but is directly applicable for Apache on Windows.



Apache Linux server (UApache) configuration

Settings in an httpd.conf file or equivalent.

  • Listen 8443
  • Listen 8081
  • Listen 8082
  • <VirtualHost *:8443 >
    • Header edit Location ^http://easaservername:8080 https://easaservername:8080
    • ProxyPreserveHost On
    • ProxyRequests off
    • ProxyPass / http://easaservername:8080/
    • ProxyPassReverse / http://easaservername:8080/
    • SSLEngine On
    • SSLCertificateFile /etc/ssl/certs/easa.crt
    • SSLCertificateKeyFile /etc/ssl/certs/easa.key
  • </Virtualhost>
  • <VirtualHost *:8081>
    • ProxyPreserveHost On
    • ProxyRequests off
    • ProxyPass / http://jsf1servername:8080/
    • ProxyPassReverse / http://jsf1servername:8080/
    • SSLEngine On
    • SSLCertificateFile /etc/ssl/certs/easa.crt
    • SSLCertificateKeyFile /etc/ssl/certs/easa.key
  • </Virtualhost>
  • <VirtualHost *:8082>
    • ProxyPreserveHost On
    • ProxyRequests off
    • ProxyPass / http://jsf2servername:8080/
    • ProxyPassReverse / http://jsf2servername:8080/
    • SSLEngine On
    • SSLCertificateFile /etc/ssl/certs/easa.crt
    • SSLCertificateKeyFile /etc/ssl/certs/easa.key
  • </Virtualhost>

EASAP (or 'JSF') Server configuration

Configuration of jsf1servername:

  • <SERVERDATA>\jsf-easa\admin\config\context.properties:
    • easa.server.public=https://uapache:8443/easa
    • easa.server.private=http://easaservername:8080/easa
    • jsf.public.url=https://uapache:8081/easa

Configuration of jsf2servername:

  • <SERVERDATA>\jsf-easa\admin\config\context.properties:
    • easa.server.public=https://uapache:8443/easa
    • easa.server.private=http://easaservername:8080/easa
    • jsf.public.url=https://uapache:8082/easa