Oracle iPlanet Web Proxy Server 4.0.14 Configuration File Reference

um-define-junction

Applicable in Init-class directive.

The um-define-junction function defines a URL Mapping or junction which will be enforced by the URL Mapping layer.

Junction definitions take two forms: junction definitions and junction mappings. A junction definition defines the overall settings for a junction. A junction mapping defines additional URL mappings that also apply to a given junction definition. They inherit all settings of the parent junction's definition, but they allow other URL mappings that are appropriate to a given junction to be associated with it. This becomes important for cookie management, as cookies from one junction will not be passed to another one.

Syntax

Init fn="um-define-junction"

Parameters

The following table describe parameters for the um-define-junction function.

The following parameters apply to both junction definitions and junction mappings.

Table 5–26 um-define-junction parameters

Parameter 

Description 

jct-name

The name of the junction. In the case of junction definitions, this name must be unique. In the case of junction mappings, this must be the name of an existing junction. 

fe-uri-prefix

The front-end URI prefix that is to be associated with this junction definition or mapping. It must begin and end with a '/' character. 

be-url-prefix

The back-end URL prefix that is to be associated with this junction definition or mapping. This is the back-end URL that will connect to the back-end application server. It must be of the form http[s]://*/*. 

The following parameters apply only to junction mappings.

Table 5–27 Junction mapping parameters

Parameter 

Description 

junction-mapping

If this is set to yes, then this definition is taken to be a junction mapping.  

The following parameters apply only to junction definitions.

Table 5–28 Junction definition parameters

Parameter 

Description 

parser-config

Specifies the parser configuration used for this junction. If not specified, the default parser configuration (the first parser configuration listed in obj.conf) is used.

passthru-cookies

Specifies a comma-separated list of cookie names is passed through to the junction without translation. This parameter is a junction-specific version of the global-passthru-cookies parameter of the load-modules function.

has-javascript

If set to yes, then JavaScript rewriting is enabled for all JavaScript content. Otherwise, JavaScript is passed without rewriting.

onload-handler

If set to yes, then a special bit of code is inserted into each request to this junction, which will set a cookie specifying the name of the junction. This cookie's name is defined in the jct-cookie-name of the load-modules function. By default, the cookie's name is um_jct.

base-tag-handler

If set to yes, then <base> tags receives special handling. Use care when combining this parameter with has-javascript, as the parser may mistake a static string value for a relative URL. Default value is no.

rewrite-events

If set to no, then event attributes within HTML tags are not rewritten. Default value is yes. This parameter operates independently of has-javascript, but is only relevant if has-javascript is set to no.

redirect-without-trailing-slash

If set to yes, then requests that match fe-uri-prefix without the trailing slash is immediately redirected to fe-uri-prefix with the trailing slash.

add-headers

Specifies a static list of headers to be added to all requests within this junction.  

lookup-equiv-hosts

Equivalent host are strings that appear in the host part of a URL, which also represent the back-end server. By default, a new junction adds the back-end server's IP addresses to this list. Setting this option to 'no' prevents this behavior. 

add-equiv-hosts

Specifies a comma-delimited list of additional host names (and/or IP addresses) that are considered to be equivalent to this junction's host name. The host part of be-url-prefix is implicit, and does not need to be added. 

output-buffer-size

Enables (or disables) output buffering. The proxy server employs HTTP chunking to send data to the client when it does not know the size of the content to be sent. Because the URL Mapping layer can send data in many small chunks, this can create a lot of CPU overhead on the proxy server machine. To alleviate this, URL Mapping offers its own output buffering so that data is sent to the client in fewer, larger chunks. To enable this, set output-buffer-size to a nonzero value.

references-other-jcts

If set to yes, the other junctions are searched when trying to rewrite URLs for this junction. Use care when employing this option, as searching other junctions can be time-consuming in a configuration that contains many junctions. 

use-template

If set to yes, and name is not set, then requests that match this junction is also assigned an object name that matches the junction's name. This allows additional directives to be executed only for this junction. 

name

If set, then this overrides the object name for this junction. It implies use-template=yes.

Example

Junction definition:


Init fn="um-define-junction" jct-name="myJunction" fe-uri-prefix="/myj/"
 be-url-prefix="http://appserver.company.com/someApplication/"

Junction mapping:


Init fn="um-define-junction" jct-name="myJunction" 
fe-uri-prefix="/someApplication/cgi-bin/" 
be-url-prefix="http://appserver.company.com/someApplication/cgi-bin" 
junction-mapping="yes"