Name

FullUrl — use full URLs (those including hostnames) in catalog definition lines

SYNOPSIS

No | Yes

DESCRIPTION

When a page request comes to Interchange, the catalog to invoke is determined from CGI value SCRIPT_NAME.

For example, if a request for www.example.com/cat1 comes in, SCRIPT_NAME will be "/cat1". If a request for www.example.com comes in, SCRIPT_NAME will be "/".

By default, hostnames are not honored, so different catalogs cannot use the same SCRIPT_NAME under the same Interchange server. This prevents multiple domains from serving their Interchange pages directly from www.HOSTNAME.com (as there can only be one "/" script name).

With FullUrl enabled, catalog selection includes the hostname and it becomes possible to uniquely determine catalog name based on both hostname and script name.

See the Catalog directive for further discussion and concrete examples.

DIRECTIVE TYPE AND DEFAULT VALUE

Global directive

EXAMPLES

Example: Enabling FullUrl

FullUrl yes

Example: Catalog definition example with FullUrl enabled

An example from interchange.cfg:

FullUrl yes

Catalog standard /path/to/catalogs/standard/ myhost.mydomain.local/cgi-bin/standard

NOTES

If FullUrl is defined, you must modify all Catalog lines in your interchange.cfg to include the hostname — FullUrl and non-FullUrl Catalog specifications are not compatible.

AVAILABILITY

FullUrl is available in Interchange versions:

4.6.0-5.9.0 (git-head)

SOURCE

Interchange 5.9.0:

Source: lib/Vend/Config.pm
Line 471

['FullUrl',       'yesno',            'No'],

Source: lib/Vend/Config.pm
Line 5414 (context shows lines 5414-5426)

sub parse_yesno {
my($var, $value) = @_;
$_ = $value;
if (m/^y/i || m/^t/i || m/^1/ || m/^on/i) {
  return 1;
}
elsif (m/^n/i || m/^f/i || m/^0/ || m/^of/i) {
  return 0;
}
else {
  config_error("Use 'yes' or 'no' for the $var directive\n");
}
}

AUTHORS

Interchange Development Group

SEE ALSO

Catalog(7ic), SubCatalog(7ic)

DocBook! Interchange!