Advanced Installation: Alternative Web-App Name

Although the installation instructions refer to /grid/ as the rendering path for the web-app/, it is indeed possible to use other names.

For the cocoon webserver
only the mount-table.xml needs to be changed and cocoon restarted.
For HTTPi webserver
the configuration script should be rerun with the new value – either interactively or by using an edited transcript file.

Yet another alternative is to use Apache Proxies, as described in the next section.

Advanced Installation: Cocoon or HTTPi behind Apache Proxies

Many Unix servers already have an Apache webserver running on the system. If you have administrative access to this server, you can proxy the xml-qstat application server behind Apache. The primary benefit is removing the browser requirement to connect to TCP port 8080 or 8888. The URL changes (for example) from http://{host}:8888/grid/ to http://{host}/grid/. This also allows firewall administrators to seal port 8888 closed against all connections not coming from the Apache server.

For the proxying to work, we need both mod_proxy and proxy_http. On some systems you can query what is configured with the a2enmod -l command and if necessary, load them (NB: the load order is important):

    $ a2enmod mod_proxy
    $ a2enmod proxy_http

On other systems you may need the LoadModule directive in your apache configuration.

The Apache configuration directives for enabling the proxy:

    <IfModule mod_proxy.c>
       # proxy connections to port 8080 forward and reverse...
       ProxyPass         /grid/  http://127.0.0.1:8080/grid/
       ProxyPassReverse  /grid/  http://127.0.0.1:8080/grid/
    </IfModule>

Of course, the names of the proxied locations need not be identical. The following is also possible:

    <IfModule mod_proxy.c>
       # proxy connections to port 8080 forward and reverse...
       ProxyPass         /xmlqstat/  http://127.0.0.1:8080/grid/
       ProxyPassReverse  /xmlqstat/  http://127.0.0.1:8080/grid/
    </IfModule>

And finally restart or reload Apache. For example,

    $ rcapache2 reload

Advanced Installation: Alternative locations for cgi-bin

If Apache is already running on the system, you may just opt to use the newer cgi implementation instead. This avoids adding extra services and may be easier to administer. For convenient updating, we’ll allow the cgi-scripts to reside on portion of the filesystem with non-privileged access.

For the aliasing to work, we need alias, which we can load if necessary:

    $ a2enmod alias

The Apache configuration directives for the cgi aliases:

    #
    # serve xmlqstat cgi-scripts from a different location
    # provide direct alias for /grid itself
    #
    ScriptAlias /grid "/data/caeapp/local/www/htdocs/cgi-bin/grid"
    ScriptAlias /cgi-grid "/data/caeapp/local/www/htdocs/cgi-bin"
    <Directory "/data/caeapp/local/www/htdocs/cgi-bin">
        Order allow,deny
        Allow from all
        Options +ExecCGI  +FollowSymLinks
        SetHandler cgi-script
    </Directory>

You will need to adjust according to your installation directories. And finally restart or reload Apache. For example,

    $ rcapache2 reload