Register a website that will run within the current Interchange instance.
Catalog name directory script_name [alias [aliases...]]
You need to have at least one Catalog directive in your
This directive is only available for use in the global
(interchange.cfg) configuration file,
and will affect all websites running under the Interchange installation.
It will not work in a website's local (catalog.cfg)
This directive registers a website that will run within the current
The simplified usage,
shown in the synopsis,
requires three or more parameters,
- The symbolic name of the website.
This name will used in error, warning, and informational messages and
must contain only alphanumeric characters, hyphens and underscores.
It is highly recommended that the name is all lowercase.
- The path to the website's home directory.
If the directory does not exist or the required "catalog.cfg" file is not present (or is not readable),
or Interchange detects any other problem,
then the website configuration will be skipped and
this particular website won't be activated for use within this
- This is a URI path by which the website can be accessed,
and can be followed by a number of optional aliases.
The "script_name" is one of the methods Interchange uses
to determine which of the configured websites a page request should
and if FullUrl is in force,
a hostname can be specified here along with the path.
All Interchange-generated links will be called using the named link path,
or one of the aliased path(s),
- Optional "script_name" aliases allow you to access the same
website via another path.
For example, this is useful when using a HTTPS/SSL server,
or a members-only area that requires "Basic HTTP authorisation".
The "script_name" path
(and aliases, if configured)
must be unique among other "script_name" paths that run under the same Interchange instance,
so that the URI path from incoming requests can be mapped to an
An exception to this is made if the FullUrl
directive is specified;
The FullUrl directive allows hostnames to
be added to differentiate otherwise identical paths.
There is a more elaborate usage of the Catalog directive, where
the individual arguments are split into multiple lines.
See the verbose directive usage example, below.
Registering a website
Catalog standard /www/interchange/standard /cgi-bin/standard
Using FullUrl, instead of the link program path, to differentiate websites
Catalog standard1 /www/interchange/standard1 www.example1.com/cgi-bin/standard
Catalog standard2 /www/interchange/standard2 www.example2.com/cgi-bin/standard
Verbose directive usage
A website can be verbosely registered using the following syntax:
Catalog standard directory /www/interchange/standard
Catalog standard script /cgi-bin/standard
Catalog standard alias /standard
Defining local website directives in the global configuration
It is possible to define website-specific configuration directives
from the global interchange.cfg configuration file.
This is useful when globally managing the location used by the
ErrorFile and DisplayErrors directives:
Catalog standard directive ErrorFile /var/log/interchange/standard/error.log