WebSphere Edge Server - iNotes Webmail with reverse proxy server

This is Interesting: Free IT Magazines  
Home > Archive > WebSphere Edge Server > January 2004 > iNotes Webmail with reverse proxy server





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author iNotes Webmail with reverse proxy server
EDUAN

2004-01-19, 3:03 pm

Hi All,

I Am trying to set up a reverse proxy using Websphere edge server's Cache
Proxy component sitting on a DMZ accessing multiple Domino servers on the
internal network using iNotes. On the reverse proxy ibmproxy.conf file I
have added the following:

ServerInit
C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw.dll:modrw_init

Transmogrifier
C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw.dll:modrw_open:modrw_
write:modrw_close:modrw_error

JunctionRewrite on

Proxy /xxx/* http://xxx.mydomain.com/*

Proxy /yyy/* http://yyy.mydomain.com/*

But when I access http://reverseproxy.mydomain.com/xxx/mail/mailfail.nsf it
tells me that it can't find my mail file if I do a right click on the error
page and go to properties and look at the actual URL it shows e.g.
http://reverseproxy.mydomain.com/ma...come/?OpenDocum
ent&ui=inotes instead of
http://reverseproxy.mydomain.com/xx.../Welcome/?OpenD
ocument&ui=inotes
Any ideas on how I can sort this one out. I Have load Websphere Edge Server
version 2.0 with PTF2 on Windows 2000. According to the PTF documentation
this issue was sorted out in this fix.

Regards
Eduan Naude
email: eduan.naude@tcm.co.za


JLee

2004-01-19, 3:03 pm

Eduan,

Try using the cookie implementation of the JunctionRewrite. The
standard (page rewrite) version only handles certain types of links, and
unfortunately Domino uses other types in various places. That causes
those links to be skipped and passed through to the client, causing the
failed GET later on. The cookie version doesn't rewrite any data, just
adds a proxy cookie so that the Proxy can recognize the rule that should
be applied for subsequent requests. The doc for PTF2 should describe
how to enable that option, I think it was something like
"JunctionRewrite on usecookie" ...something like that.

Jeff

EDUAN

2004-01-19, 3:03 pm

Hi Jeff,

Thanks for the info, but I have basically spent a whole day searching
Websphere Edge Server update documentation, Websphere Edge Server support
web site, Notes.net and basically the internet in general and could not find
any other options for "JunctionRewrite [on|off]". These are the only two
options available according to the documentation and I agree fully with your
solution, but where can I find some documentation on this additional
parameter "usecookie" and the correct format to enter this parameter.

Regards.
Eduan.

"JLee" <leeja@NOSPAMus.ibm.com> wrote in message
news:3F030AF3.4060403@NOSPAMus.ibm.com...
quote:

> Eduan,
>
> Try using the cookie implementation of the JunctionRewrite. The
> standard (page rewrite) version only handles certain types of links, and
> unfortunately Domino uses other types in various places. That causes
> those links to be skipped and passed through to the client, causing the
> failed GET later on. The cookie version doesn't rewrite any data, just
> adds a proxy cookie so that the Proxy can recognize the rule that should
> be applied for subsequent requests. The doc for PTF2 should describe
> how to enable that option, I think it was something like
> "JunctionRewrite on usecookie" ...something like that.
>
> Jeff
>




JLee

2004-01-19, 3:03 pm

Hi Eduan,

Hmm...I believe when a new version is installed, there should be an
ibmproxy.conf.new file created (not sure under what directory). That
should have any new directives or comments added to the standard config.
Check and see if that exists on your machine, if not, let me know and
I'll find a copy of the current config file and send it to you.

Looks like the PTF2 doc only has the base JunctionRewrite information
and not the cookie enhancement data.

Jeff

EDUAN

2004-01-19, 3:03 pm

Hi Jeff,

Thanks for input so far. I searched the ibmproxy.conf file and it did not
even contain the standard "JunctionRewrite [on|off]" directive in it after I
installed PTF2 I had to manually add the following:
ServerInit
C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw.dll:modrw_init

Transmogrifier
C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw.dll:modrw_open:modrw_
write:modrw_close:modrw_error

JunctionRewrite on

I Found this odd as the PTF2 update info stated that these directive are
added by the installation of PTF2. So I seached the entire system for any
other ibmproxy.conf file and did not find any. I Thought that something had
gone wrong with the install of PTF2 and then removed everything, installed
the product and the PTF again. Same results.

So I would really appreciate it if you could mail me a ibmproxy.conf file
with all the correct directives to get this working.

Regards.

Eduan.

"JLee" <leeja@NOSPAMus.ibm.com> wrote in message
news:3F09F662.60705@NOSPAMus.ibm.com...
quote:

> Hi Eduan,
>
> Hmm...I believe when a new version is installed, there should be an
> ibmproxy.conf.new file created (not sure under what directory). That
> should have any new directives or comments added to the standard config.
> Check and see if that exists on your machine, if not, let me know and
> I'll find a copy of the current config file and send it to you.
>
> Looks like the PTF2 doc only has the base JunctionRewrite information
> and not the cookie enhancement data.
>
> Jeff
>




JLee

2004-01-19, 3:03 pm

Eduan, I tried to send an email but it didn't work to the email above.
Here is the relevant information from the config file :

To use the cookie implementation:

1) Do not use the Junction Rewrite plugin (leave these lines commented out
)
# ===== Junction URL Rewrite Plug-in =====
#ServerInit
C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw.dll:modrw_init
#Transmogrifier
C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw. dll:modrw_open:modrw_write:modrw_close:m
odrw_error

2) Add the "UseCookie" option to the "JunctionRewrite on" directive :

# If UseCookie is enabled, backend server information will be stored
# in a cookie header and sent to client. No rewrite is needed and
the
# plugin could be commented out. To use this feature, client browser
must
# support cookie.
#
# Default: off useplugin
# Syntax: JunctionRewrite <on | off> [ UsePlugin | UseCookie ]

I noticed an interim fix (4.0.2.14) about the cookie implementation not
updating the path attribute of the cookie, so please make sure you're at
that fix level or higher. The builds should be out on the
service2.boulder.ibm.com ftp server that the L2 support group runs.

Jeff

EDUAN

2004-01-19, 3:03 pm

Hi Jeff,

Thanks for your time so far. I Am a bit confused though. After you told me
about the "JunctionRewrite on UseCookie" directive I went and searched the
official Websphere Edge Server Web Site for any documentation on this
directive and could not find anything. Then I went and searched the Web and
found mention of it at the Websphere Application Server V5.0 web site.
Websphere application Server V5.0 comes with something they call a Edge
Component and in the update documentation for the latest fix of Websphere
Application Server V5.0 they mention this directive. I Wonder if these are
the same Cache Proxy servers and if they are, are they at the same release.
Could you be a bit more specific to the path of that fix on the FTP server.
I Searched it but could not fing the interim fix.
Does PTF2 include this fix because I tried adding the directive
"JunctionRewrite on UseCookie" and commenting out the plugins, but when I
try and request the site the Reverse Proxy Serve falls over.

"JLee" <leeja@NOSPAMus.ibm.com> wrote in message
news:3F0ADF5C.3030507@NOSPAMus.ibm.com...
quote:

> Eduan, I tried to send an email but it didn't work to the email above.
> Here is the relevant information from the config file :
>
> To use the cookie implementation:
>
> 1) Do not use the Junction Rewrite plugin (leave these lines commented


out
quote:

> )
> # ===== Junction URL Rewrite Plug-in =====
> #ServerInit
> C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw.dll:modrw_init
> #Transmogrifier
>


C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw.dll:modrw_open:modrw_
write:modrw_close:modrw_error
quote:
[col
or=darkred]
>
> 2) Add the "UseCookie" option to the "JunctionRewrite on" directive :
>
> # If UseCookie is enabled, backend server information will be[/color]

stored
quote:

> # in a cookie header and sent to client. No rewrite is needed and
> the
> # plugin could be commented out. To use this feature, client


browser
quote:

> must
> # support cookie.
> #
> # Default: off useplugin
> # Syntax: JunctionRewrite <on | off> [ UsePlugin | UseCookie ]
>
> I noticed an interim fix (4.0.2.14) about the cookie implementation not
> updating the path attribute of the cookie, so please make sure you're at
> that fix level or higher. The builds should be out on the
> service2.boulder.ibm.com ftp server that the L2 support group runs.
>
> Jeff
>




----------------------------------------------------------------------------
----

quote:

> # (C) COPYRIGHT International Business Machines Corp. 1997, 2000, 2001
> # All Rights Reserved
> # Licensed Materials - Property of IBM
> #
> # US Government Users Restricted Rights - Use, duplication or
> # disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
> #
> # ========================================
============================= #
> #
> # This is the default configuration file for the
> # IBM WebSphere Edge Server Web Traffic Express
> # proxy server.
> #
> # TABLE OF CONTENTS
> # =================
> # - Basic directives
> # - Process control
> # - Logging directives
> # * log file directives
> # * log archive directives
> # * log filtering directives
> # - Method directives
> # - Content presentation directives
> # * Welcome pages directives
> # * Directory browsing directives
> # * CGI program directives
> # * Content type directives
> # - Error Message directives
> # - API directives
> # - User authentication and document protection
> # - Mapping rules
> # - Performance directives
> # - Timeout directives
> # - Proxy directives
> # - Proxy caching directives
> # - Proxy cache garbage collection directives
> # - Advanced proxy and caching directives
> # - Remote Cache Access (RCA) directives
> # - SNMP directives
> # - Icon directives
> # - Cache agent directives
> # - PICS Filtering directives
> # - Miscellaneous directive
> # - System Plug-in directives
> #
> #
> # NOTE
> # ====
> # Space characters within filenames must be preceeded by a


backslash:
quote:

> #
> # C:\Program\ Files\IBM\edge\cp\server_root
> #
> # Alternately, short filenames (8.3 equivalents) may be used:
> #
> # C:\Progra~1\IBM\edge\cp\server_root
> #
> # ========================================
============================= #
>
>
>
> # ========================================
============================= #
> #
> # Basic directives
> #
> # ========================================
============================= #
>
>
> # ServerRoot directive:
> #
> # Set this to point to the directory where you unpacked this
> # distribution, or wherever you want ibmproxy to have its "home".
> #
> # Default: <none>
> # Syntax: ServerRoot <path>
> ServerRoot <none>
>
>
> # HeaderServerName directive:
> #
> # This directive allows the administrator to modify the name of the
> # proxy server contained within the http header.
> #
> # The default server name is IBM-PROXY-WTE-US/VersionNumber.
> #
> # Syntax: HeaderServerName <headerservername>
> #
> # HeaderServerName <none>
>
>
> # Hostname directive:
> #
> # Specify the fully qualified hostname, including the domain. You


can
quote:

> # use an alias (if you have one set up) instead of the machine's


real
quote:

> # host name so that clients will not be able to see the real host


name.
quote:

> #
> # Default: <host name default defined in DNS>
> # Syntax: Hostname <fully qualified host name>
> #
> Hostname <none>
>
>
> # BindSpecific directive:
> #
> # Allows a multi-homed system to run a different server on
> # each IP address.
> #
> # Default: off
> # Syntax: BindSpecific <on | off>
> BindSpecific off
>
>
> # Port directive:
> #
> # Port used by the server.
> #
> # Default: 80
> # Syntax: Port <num>
> Port 80
>
> # AdminPort directive:
> #
> # This port may be used by the administrator for access to the
> # server status pages or configuration forms. Requests to this
> # port will not be queued with all other incoming requests on the
> # standard port(s) defined with the Port directive. However, they
> # will go through the normal access control and request-mapping
> # rules (Pass, Exec, Protect, etc).
> #
> # The administration port must not be the same as the standard
> # port(s) defined with the Port directive.
> #
> # Default: 8008
> # Syntax: AdminPort <num>
> AdminPort 8008
>
>
>
>
> # ========================================
============================= #
> #
> # Logging directives
> #
> # ========================================
============================= #
>
>
> # ==============================
> # *** log file directives ***
> # ==============================
>
>
> # If you want logging, specify locations for your logs:
> #
> # AccessLog - used for logging local document requests
> # ProxyAccessLog - used for logging proxy requests
> # CacheAccessLog - used for logging hits on proxy cache
> # ErrorLog - used for logging any errors
> # EventLog - used for logging initialization events
> #
> # NOTE: To enable logging of requests to the proxy cache, the
> # following must be defined:
> #
> # Caching MUST be turned ON (default is OFF)
> # CacheAccessLog MUST be defined
> #
> # Defaults: AccessLog


C:\Progra~1\IBM\edge\cp\server_root\logs
\local
quote:

> # ProxyAccessLog


C:\Progra~1\IBM\edge\cp\server_root\logs
\proxy
quote:

> # CacheAccessLog


C:\Progra~1\IBM\edge\cp\server_root\logs
\cache
quote:

> # ErrorLog


C:\Progra~1\IBM\edge\cp\server_root\logs
\error
quote:

> # EventLog


C:\Progra~1\IBM\edge\cp\server_root\logs
\event
quote:

> # Syntax: <directive> <fullpath-filename>
>
> AccessLog C:\Progra~1\IBM\edge\cp\server_root\logs
\local
> ProxyAccessLog C:\Progra~1\IBM\edge\cp\server_root\logs
\proxy
> CacheAccessLog C:\Progra~1\IBM\edge\cp\server_root\logs
\cache
> ErrorLog C:\Progra~1\IBM\edge\cp\server_root\logs
\error
> EventLog C:\Progra~1\IBM\edge\cp\server_root\logs
\event
>
> # LogFileFormat:
> #
> # Specify the format of the access log files.
> # By default, logs are displayed in the NCSA Common Log Format.
> # Specify "combined" to get the NCSA Combined Log Format instead.
> # Entries in the combined format are the same as those in the
> # common format with the addition of fields for the referring URL,
> # User Agent, and Cookie (if present in the request). Certain site
> # analysis tools, such as IBM's Site Analyzer, require proxy logs
> # to be in Combined format.
> #
> # Default: common
> # Syntax: LogFileFormat <common | combined>
> #
> # LogFileFormat common
>
> # LogToGUI directive:
> #
> # Display log entries in the HTTP server window
> # on the workstation. To optimize server performance,
> # this option is set to "off".
> #
> # Default: off
> # Syntax: LogToGUI <on | off>
> LogToGUI off
>
>
> # NoLog directive:
> #
> # Suppress access log entries for host matching a given IP address
> # or hostname. Wild cards "*" may be used. This directive may be


used
quote:

> # multiple times within the configuration file.
> #
> # Default: <none>
> # Syntax: NoLog <hostnames and IP addresses>
> #
> # NOTE: DNS-Lookup may need to be turned ON.
> #
> # Example:
> # NoLog 128.141.*.*
> # NoLog *.location.company.com
> # Nolog *.*.*.com
>
>
> # LogVirtualHostName directive:
> #
> # Log virtual host name into log files. The virtual host name will


be
quote:

> # merged into URL or place at the beginning of each record. For the
> # record of HTTP 1.0 request without HOST header, the IP address of


the
quote:

> # server will be recorded into log file.
> #
> # Default: <none>
> # Syntax: LogVirtualHostName < none | merged | beginning >
> #
> # NOTE: DNS-Lookup may need to be turned ON.
> #
> # Example:
> # LogVirtualHostName merged
> # LogVirtualHostName beginning
>
>
> # MaxLogFileSize directive:
> #
> # MaxLogFileSize specifies the maximum size for each log file. When
> # a log file exceeds the specified size, it is closed, and a new file
> # is opened for writing. A version number is appended to logfile names
> # to distinguish log files of the same type created on the same day.
> # The unit specified can be B (bytes), K (kilobytes), M (megabytes),
> # or G (gigabytes).
> #
> # NOTE: Recommended size should be no more than one fourth of swap
> # space.
> #
> # Default: <none>
> # Syntax: MaxLogFileSize <size> B | K | M | G
> #
> # Example:
> # MaxLogFileSize 100 M
>
>
> # ==============================
> # *** log archive directives ***
> # ==============================
>
>
> # LogArchive directive
> #
> # Specify the type of archive processing to use.
> #
> # Default: Purge
> # Syntax: LogArchive <Compress | Purge | none>
> #
> LogArchive Purge
>
>
> # Compress directives
> #
> # If you specified "Compress" for LogArchive, specify:
> # - the age at which the log files should be compressed
> # - the age at which the log files should be deleted
> # - the compress command you want executed against the
> # log archive files
> #
> # Default: 0
> # Syntax: CompressAge <num>
> # Syntax: CompressDeleteAge <num>
> #
> # Default: <none>
> # Syntax: CompressCommand <commpress-command>
> #
> CompressAge 1
> CompressDeleteAge 7
> # CompressCommand pkzip -add C:\logarchs\log%%DATE%%.zip %%LOGFILES%%
>
>
> # Purge directives
> #
> # If you specified "Purge" for LogArchive,
> # specify the age and size (in Megabytes) limits
> # at which time the files should be purged.
> #
> # Syntax: PurgeAge <num>
> # Default: PurgeAge 7
> # Syntax: PurgeSize <num>
> # Default: PurgeSize 0
> #
> PurgeAge 7
> PurgeSize 0
>
>
> # ====================================
> # *** log filtering directives ***
> # ====================================
>
>
> # AccessLogExcludeUserAgent directive
> #
> # A filter to exclude request URLs from user-agents that match a
> # given template.
> #
> # Default: Requests from Network Dispatcher's HTTP and WTE advisors
> # will not be logged
> # Syntax: AccessLogExcludeUserAgent <User-Agent template>
> #
> AccessLogExcludeUserAgent IBM_Network_Dispatcher_HTTP_Advisor
> AccessLogExcludeUserAgent IBM_Network_Dispatcher_WTE_Advisor
>
> # AccessLogExcludeURL, AccessLogExcludeMethod,
> # AccessLogExcludeReturnCode and AccessLogExcludeMimeType


directive:
quote:

> #
> # Access log entries may be filtered to exclude requests by:
> # * requests matching a given URL template
> # * requests of a given method
> # * requests with a given return code range (200s, 300s, 400s,


500s)
quote:

> # * requests for files of a given mime type
> #
> # Default: <none>
> # Syntax: AccessLogExcludeURL <URL template>
> # AccessLogExcludeMethod <GET | PUT | POST | DELETE>
> # AccessLogExcludeReturnCode <200 | 300 | 400 | 500>
> # AccessLogExcludeMimeType <text/html | text/plain |
> # text/other | image/gif |
> # image/jpeg | image/(other) |
> # application/* |
> # audio/* | video/* |
> # (other)/(other)>
> #
> # Example:
> # AccessLogExcludeURL *.gif
> # AccessLogExcludeURL /Freebies/*
> # AccessLogExcludeMethod PUT
> # AccessLogExcludeMethod POST
> # AccessLogExcludeReturnCode 300
> # AccessLogExcludeReturnCode 400
> # AccessLogExcludeMimeType text/html
> # AccessLogExcludeMimeType text/plain
>
>
> # ========================================
============================= #
> #
> # Method directives
> #
> # ========================================
============================= #
> #
> # HTTP Methods that you do or don't want your server to accept.
> #
> # NOTE: Please reference online documentation/help to specify or
> # create other methods.
> #
> # Default: Enable GET
> # Enable HEAD
> # Enable POST
> # Enable TRACE
> # Enable OPTIONS
> # Disable CONNECT
> # Disable PUT
> # Disable DELETE
> # Syntax: Enable <method>
> # Disable <method>
> #
> Enable GET
> Enable HEAD
> Enable POST
> Enable TRACE
> Enable OPTIONS
>
> Disable CONNECT
> Disable PUT
> Disable DELETE
>
>
> # ========================================
============================= #
> #
> # Content presentation directives
> #
> # ========================================
============================= #
>
>
> # ==============================
> # *** Welcome pages ***
> # ==============================
>
> # Welcome directive:
> #
> # Specifies the default file name to use when only a directory name


is
quote:

> # specified in the URL. Many Welcome directives may be defined,


with the
quote:

> # one defined earliest having precedence.
> #
> # Multi-homed servers can use the IP-address_template parameter to
> # specify an address template which restricts the server to


displaying
quote:

> # a specific welcome page based on which address template matches.
> #
> # NOTE: the address of the servers network connection is compared
> # to the template, not the address of the requesting client.
> #
> # Defaults: Welcome.html, welcome.html, index.html, Frntpage.html
> # Syntax: Welcome file-name [IP-address-template]
> #
> # Example:
> # Welcome letsgo.html
> # Welcome CustomerA.html 9.67.106.79
> Welcome Welcome.html
> Welcome index.html
> Welcome Frntpage.html
>
>
> # =====================================
> # *** Directory browsing directives ***
> # =====================================
>
> # These directives control directory listings as follows:
> # * Enable/disable or selective directory browsing
> # * Configure/disable readme feature for directory browsing
> # * Control the appearance of the directory listing
> # * Define the maximum width of the description text
> # * Define the maximum & minimum width of the filename field
> #
> # Default: DirShowIcons on
> # DirShowDate on
> # DirShowSize on
> # DirShowDescription on
> # DirShowCase on
> # DirShowHidden on
> # DirShowBytes off
> # Syntax: <directive> <on | off>
> #
> # Default: DirShowMaxDescrLength 25
> # DirShowMaxLength 25
> # DirShowMinLength 15
> # Syntax: <directive> <num>
> DirShowIcons on
> DirShowDate on
> DirShowSize on
> DirShowDescription on
> DirShowCase off
> DirShowHidden on
> DirShowBytes off
> DirShowMaxDescrLength 25
> DirShowMaxLength 25
> DirShowMinLength 15
>
>
> # FTPDirInfo directive:
> #
> # FTP servers may generate a welcome or description message for
> # a directory. This can optionally be displayed as part of FTP
> # directory listings; in addition, you can control where it will
> # be displayed. The following options are available:
> #
> # FTPDirInfo top - display welcome message at the top of the


page,
quote:

> # before the listing of files in the directory.
> # FTPDirInfo bottom - display welcome message at the bottom of the


page,
quote:

> # after the listing of files in the directory.
> # FTPDirInfo off - do not display the welcome message from the
> # FTP server.
> #
> # Note that this directive gives no control over the content of the
> # message itself; that message will be generated by the FTP server
> # being contacted.
> #
> # Default: FTPDirInfo top
> # Syntax: FTPDirInfo <top | bottom | off>
> #
> # Example: don't display welcome messages from FTP servers
> # FTPDirInfo off
> FTPDirInfo top
>
>
> # DirBackgroundImage directive:
> #
> # This directive allows applying a background image to directory
> # listings generated by the proxy. Directory listings are generated
> # when browsing FTP sites through the proxy.
> #
> # The background image should be given as an absolute path. If the
> # image is located at another server, the background image must
> # be specified as a full URL.
> #
> # If no background image is specified, a plain white background


will
quote:

> # be used.
> #
> # Default: no background image specified
> # Syntax: DirBackgroundImage /some/image.jpg
> #
> # Example: use /images/corplogo.png as background graphic
> # DirBackgroundImage /images/corplogo.png
> #
> # Example: use /graphics/embossed.gif on Web server www.somehost.com as
> # background graphic
> # DirBackgroundImage http://www.somehost.com/graphics/embossed.gif
>
>
> # =====================================
> # *** CGI program directives ***
> # =====================================
>
> # InheritEnv and DisInheritEnv directives:
> #
> # InheritEnv - Specify which environment variables are
> # inherited by CGI programs.
> #
> # DisInheritEnv - Specify which environment variables are
> # disinherited by CGI programs.
> #
> # By default (if neither statement is used), all environment
> # variables are inherited by CGI programs. If you include any
> # InheritEnv directive, only those environment variables
> # specified on InheritEnv directives will be inherited. To
> # exclude individual environment variables from being inherited,
> # use the DisInheritEnv directive.
> #
> # NOTE: Refer to the WTE programming Guide for a list
> # of the CGI-specific environment variables.
> #
> # Default: <none>
> # Syntax: InheritEnv <variable>
> # Syntax: DisInheritEnv <variable>
> # Example:
> # InheritEnv PATH
> # InheritEnv LANG=ENUS
> # DisInheritEnv PATH
> # DisInheritEnv LANG
>
>
> # =====================================
> # *** Content type directives ***
> # =====================================
>
> # imbeds directive:
> #
> # Controls Server Side Include processing for output that has
> # Content-type: text/x-ssi-html.
> #
> ##
> # Default: off SSIOnly
> # Syntax: imbeds <on | off | files | cgi | noexec> <html |


SSIOnly>
quote:

> # parm1: on process files, CGIs and SSI #exec CGI
> # off never use SSI
> # files process files and SSI #exec CGI
> # cgi process CGIs and SSI #exec CGI
> # noexec process files, CGIs but not SSI #exec


CGI
quote:

> #
> # parm2: html also process Content-type: text/html
> # SSIOnly process Content-type: text/x-ssi-html


only
quote:

> #
> imbeds on SSIOnly
>
>
> # SuffixCaseSense directive:
> #
> # Specify whether case sensitivity for suffixes is on or off.
> #
> # Default: off
> # Syntax: SuffixCaseSense <on | off>
> #
> # NOTE: This directive should be placed BEFORE any AddType or
> # AddEncoding directives.
> #
> SuffixCaseSense off
>
> # AcceptAnything directive:
> #
> # If this is set to ON, documents will be served to the client even
> # if the MIME type of the document does not match an Accept:
> # header sent by the client. If this is OFF, documents with a MIME


type
quote:

> # which the client doesn't not state that they understand will


cause
quote:

> # the client to see an error page instead.
> #
> # Default: ON
> # Syntax: AcceptAnything <on | off>
> #
> #
> AcceptAnything on
>
>
> # AddType directive:
> #
> # Map a suffix to the content-type of a file.
> #
> # Defaults: see list below
> # Syntax: Addtype <.suffix><representation><encoding><quality>
> # where <quality> is optional
> #
>
> # Application-specific types
> AddType .bcpio application/x-bcpio binary 1.0 # Old


binary CPIO
quote:

> AddType .cpio application/x-cpio binary 1.0 # POSIX


CPIO
quote:

> AddType .gtar application/x-gtar binary 1.0 # Gnu tar
> AddType .bin application/octet-stream binary 1.0 #


Uninterpreted binary
quote:

> AddType .class application/octet-stream binary 1.0 # Java


applet or application
quote:

> AddType .dms application/octet-stream binary 1.0 #
> AddType .exe application/octet-stream binary 0.8 #


MSDOS/OS2/WIN executables
quote:

> AddType .dll application/octet-stream binary 0.8 # OS2/WIN


executables
quote:

> AddType .lha application/octet-stream binary 0.8 # LHArc
> AddType .lzh application/octet-stream binary 0.8 #


Compressed data
quote:

> AddType .oda application/oda binary 1.0
> AddType .pdf application/pdf binary 1.0
> AddType .ai application/postscript 8bit 0.5 # Adobe


Illustrator
quote:

> AddType .PS application/postscript 8bit 0.8 #


PostScript
quote:

> AddType .eps application/postscript 8bit 0.8
> AddType .ps application/postscript 8bit 0.8
> AddType .rtf application/rtf 7bit 1.0 # RTF
> AddType .sit application/stuffit binary 1.0 # Mac


StuffIt compressor
quote:

> AddType .csh application/x-csh 7bit 0.5 # C-shell


script
quote:

> AddType .dvi application/x-dvi binary 1.0 # TeX DVI
> AddType .hdf application/x-hdf binary 1.0 # NCSA


HDF data file
quote:

> AddType .latex application/x-latex 8bit 1.0 # LaTeX


source
quote:

> AddType .nc application/x-netcdf binary 1.0 # Unidata


netCDF data
quote:

> AddType .cdf application/x-netcdf binary 1.0
> AddType .js application/x-javascript binary 1.0 # Java


script
quote:

> AddType .sh application/x-sh 7bit 0.5 #


Shell-script
quote:

> AddType .shar application/x-shar 8bit 1.0 # Shell


archive
quote:

> AddType .sv4cpio application/x-sv4cpio binary 1.0 # SVR4


CPIO
quote:

> AddType .sv4crc application/x-sv4crc binary 1.0 # SVR4


CPIO with CRC
quote:

> AddType .tcl application/x-tcl 7bit 0.5 #


TCL-script
quote:

> AddType .tex application/x-tex 8bit 1.0 # TeX


source
quote:

> AddType .texi application/x-texinfo 7bit 1.0 # Texinfo
> AddType .texinfo application/x-texinfo 7bit 1.0
> AddType .t application/x-troff 7bit 0.5 # Troff
> AddType .roff application/x-troff 7bit 0.5
> AddType .tr application/x-troff 7bit 0.5
> AddType .man application/x-troff-man 7bit 0.5 # Troff


with man macros
quote:

> AddType .me application/x-troff-me 7bit 0.5 # Troff


with me macros
quote:

> AddType .ms application/x-troff-ms 7bit 0.5 # Troff


with ms macros
quote:

> AddType .src application/x-wais-source 7bit 1.0 # WAIS


source
quote:

> AddType .prs application/x-freelance binary 1.0 # Lotus


Freelance
quote:

> AddType .pre application/vnd.lotus-freelance binary 1.0 # Lotus


Freelance
quote:

> AddType .prz application/vnd.lotus-freelance binary 1.0 # Lotus


Freelance
quote:

> AddType .lwp application/vnd.lotus-wordpro binary 1.0 # Lotus


Word Pro
quote:

> AddType .sam application/vnd.lotus-wordpro binary 1.0 # Lotus


Word Pro
quote:

> AddType .apr application/vnd.lotus-approach binary 1.0 # Lotus


Approach
quote:

> AddType .vew application/vnd.lotus-approach binary 1.0 # Lotus


Approach
quote:

> AddType .123 application/vnd.lotus-1-2-3 binary 1.0 # Lotus


1-2-3
quote:

> AddType .wk1 application/vnd.lotus-1-2-3 binary 1.0 # Lotus


1-2-3
quote:

> AddType .wk3 application/vnd.lotus-1-2-3 binary 1.0 # Lotus


1-2-3
quote:

> AddType .wk4 application/vnd.lotus-1-2-3 binary 1.0 # Lotus


1-2-3
quote:

> AddType .org application/vnd.lotus-organizer binary 1.0 # Lotus


Organizer
quote:

> AddType .or2 application/vnd.lotus-organizer binary 1.0 # Lotus


Organizer
quote:

> AddType .or3 application/vnd.lotus-organizer binary 1.0 # Lotus


Organizer
quote:

> AddType .scm application/vnd.lotus-screencam binary 1.0 # Lotus


Screencam
quote:

> AddType .ppt application/vnd.microsoft-powerpoint binary 1.0 # MS


PowerPoint
quote:

> AddType .pac application/x-ns-proxy-autoconfig binary 1.0 #


Netscape proxy Autoconfig files
quote:

> AddType .hqx application/mac-binhex40 binary 1.0 #


Macintosh BinHex format
quote:

> AddType .bsh application/x-sh 7bit 0.5 # Bourne


shell script
quote:

> AddType .ksh application/x-ksh 7bit 0.5 # K-shell


script
quote:

> AddType .pcl application/x-pcl 7bit 0.5 #
> AddType .wk1 application/x-123 binary 1.0 #
>
> # Audio files
> AddType .snd audio/basic binary 1.0 # Audio
> AddType .au audio/basic binary 1.0
> AddType .mid audio/midi binary 1.0
> AddType .midi audio/midi binary 1.0
> AddType .kar audio/midi binary 1.0
> AddType .mpga audio/mpeg binary 1.0
> AddType .mp2 audio/mpeg binary 1.0
> AddType .mp3 audio/mpeg binary 1.0
> AddType .aiff audio/x-aiff binary 1.0
> AddType .aifc audio/x-aiff binary 1.0
> AddType .aif audio/x-aiff binary 1.0
> AddType .ra audio/x-realaudio binary 1.0
> AddType .ram audio/x-pn-realaudio binary 1.0
> AddType .rpm audio/x-pn-realaudio-plugin binary 1.0
> AddType .wav audio/x-wav binary 1.0 #


Windows+ WAVE format
quote:

>
> AddType .pdb chemical/x-pdb binary 0.8
> AddType .xyz chemical/x-pdb binary 0.8
>
> # Graphic (image) types
> AddType .bmp image/bmp binary 1.0 # OS/2


bitmap format
quote:

> AddType .ras image/x-cmu-raster binary 1.0
> AddType .gif image/gif binary 1.0 # GIF
> AddType .ief image/ief binary 1.0 # Image


Exchange fmt
quote:

> AddType .jpg image/jpeg binary 1.0 # JPEG
> AddType .JPG image/jpeg binary 1.0
> AddType .JPE image/jpeg binary 1.0
> AddType .jpe image/jpeg binary 1.0
> AddType .JPEG image/jpeg binary 1.0
> AddType .jpeg image/jpeg binary 1.0
> AddType .png image/png binary 1.0 #


Portable Network Graphics
quote:

> AddType .tif image/tiff binary 1.0 # TIFF
> AddType .tiff image/tiff binary 1.0
> AddType .pnm image/x-portable-anymap binary 1.0 # PBM


Anymap format
quote:

> AddType .pbm image/x-portable-bitmap binary 1.0 # PBM


Bitmap format
quote:

> AddType .pgm image/x-portable-graymap binary 1.0 # PBM


Graymap format
quote:

> AddType .ppm image/x-portable-pixmap binary 1.0 # PBM


Pixmap format
quote:

> AddType .rgb image/x-rgb binary 1.0
> AddType .xbm image/x-xbitmap binary 1.0 # X


bitmap
quote:

> AddType .xpm image/x-xpixmap binary 1.0 # X


pixmap format
quote:

> AddType .xwd image/x-xwindowdump binary 1.0 # X


window dump (xwd)
quote:

>
> # "Multipart" (containers)
> AddType .tar multipart/x-tar binary 1.0 # 4.


3BSD tar
quote:

> AddType .ustar multipart/x-ustar binary 1.0 # POSIX


tar
quote:

> AddType .zip multipart/x-zip binary 1.0 # PKZIP
>
> # Text file types
> AddType .css text/css 8bit 1.0 # W3C


Cascading Style Sheets
quote:

> AddType .html text/html 8bit 1.0 # HTML
> AddType .htm text/html 8bit 1.0 # HTML on


PCs
quote:

> AddType .c text/plain 7bit 0.5 # C


source
quote:

> AddType .h text/plain 7bit 0.5 # C


headers
quote:

> AddType .C text/plain 7bit 0.5 # C++


source
quote:

> AddType .cc text/plain 7bit 0.5 # C++


source
quote:

> AddType .hh text/plain 7bit 0.5 # C++


headers
quote:

> AddType .java text/plain 7bit 0.5 # Java


source
quote:

> AddType .m text/plain 7bit 0.5 #


Objective-C source
quote:

> AddType .f90 text/plain 7bit 0.5 # Fortran


90 source
quote:

> AddType .txt text/plain 7bit 0.5 # Plain


text
quote:

> AddType .cxx text/plain 7bit 0.5 # C++
> AddType .for text/plain 7bit 0.5 # Fortran
> AddType .mar text/plain 7bit 0.5 # MACRO
> AddType .log text/plain 7bit 0.5 #


logfiles
quote:

> AddType .com text/plain 7bit 0.5 # scripts
> AddType .sdml text/plain 7bit 0.5 # SDML
> AddType .list text/plain 7bit 0.5 #


listfiles
quote:

> AddType .lst text/plain 7bit 0.5 #


listfiles
quote:

> AddType .def text/plain 7bit 0.5 #


definition files
quote:

> AddType .conf text/plain 7bit 0.5 #


definition files
quote:

> AddType . text/plain 7bit 0.5 # files


with no extension
quote:

> AddType .rtx text/richtext 7bit 1.0 # MIME


Richtext format
quote:

> AddType .tsv text/tab-separated-values 7bit 1.0 #


Tab-separated values
quote:

> AddType .etx text/x-setext 7bit 0.9 # Struct


Enchanced Txt
quote:

> AddType .asm text/x-asm 7bit 1.0 # ASM


source
quote:

> AddType .sgm text/x-sgml 8bit 1.0 # SGML


source
quote:

> AddType .sgml text/x-sgml 8bit 1.0 # SGML


source
quote:

> AddType .htmls text/x-ssi-html 8bit 1.0 #


Server-side includes
quote:

> AddType .shtml text/x-ssi-html 8bit 1.0 #


Server-side includes
quote:

> AddType .uil text/x-uil 8bit 1.0 #
> AddType .uu text/x-uuencode 8bit 1.0 #
>
> # Video formats
> AddType .mpg video/mpeg binary 1.0
> AddType .mpe video/mpeg binary 1.0
> AddType .mpeg video/mpeg binary 1.0
> AddType .qt video/quicktime binary 1.0 #


QuickTime
quote:

> AddType .mov video/quicktime binary 1.0
> AddType .avi video/x-msvideo binary 1.0 # MS


Video for Windows
quote:

> AddType .movie video/x-sgi-movie binary 1.0 # SGI


movieplayer
quote:

> AddType .mjpg video/x-motion-jpeg binary 1.0 #
>
> # "WWW" - internal - types
> AddType .mime www/mime binary 1.0 #


Internal -- MIME is not recursive
quote:

>
> # Extension types
> AddType .ice x-conference/x-cooltalk binary 1.0
> AddType .wrl x-world/x-vrml binary 1.0 # VRML
>
> # When all else fails...
> AddType *.* application/octet-stream binary 0.1 # Try to


guess
quote:

> AddType * application/octet-stream binary 0.1 # Try to


guess
quote:

>
>
> # AddEncoding directive:
> #
> # Map a suffix to a MIME content encoding.
> # These are usually extra suffixes that modify the base file.
> #
> # Defaults: <none>
> # Syntax: AddEncoding <.suffix><encoding>
> AddEncoding .Z x-compress 1.0 # Compressed data
> AddEncoding .gz x-gzip 1.0 # Compressed data
>
>
>
>
> # ========================================
============================= #
> #
> # Error Message directives
> #
> # ========================================
============================= #
>
>
> # ErrorPage directive:
> #
> # Specifies the html file name to be returned by the server to the
> # client when a specific error occurs.
> #
> # NOTE: Please see online documentation for a list of keywords.
> #
> # Default: <none>
> # Syntax: ErrorPage <keyword> </path/filename.html>
> #
> # Example:
> # ErrorPage scriptstart /errorpages/scriptstart.html
> #
> ErrorPage badrange /errorpages/badrange.htmls
> ErrorPage badredirect /errorpages/badredirect.htmls
> ErrorPage badrequest /errorpages/badrequest.htmls
> ErrorPage badscript /errorpages/badscript.htmls
> ErrorPage baduser /errorpages/baduser.htmls
> ErrorPage blocked /errorpages/blocked.htmls
> ErrorPage byrule /errorpages/byrule.htmls
> ErrorPage cacheexp /errorpages/cacheexp.htmls
> ErrorPage cachenoconn /errorpages/cachenoconn.htmls
> ErrorPage cachenotopened /errorpages/cachenotopened.htmls
> ErrorPage cacheonly /errorpages/cacheonly.htmls
> ErrorPage connectfail /errorpages/connectfail.htmls
> ErrorPage deletefailed /errorpages/deletefailed.htmls
> ErrorPage dirbrowse /errorpages/dirbrowse.htmls
> ErrorPage dirnobrowse /errorpages/dirnobrowse.htmls
> ErrorPage dotdot /errorpages/dotdot.htmls
> ErrorPage expectfailed /errorpages/expectfailed.htmls
> ErrorPage ftpanonloginrej /errorpages/ftpanonloginrej.htmls
> ErrorPage ftpauth /errorpages/ftpauth.htmls
> ErrorPage ftpbad220 /errorpages/ftpbad220.htmls
> ErrorPage ftphpanonloginrej /errorpages/ftphpanonloginrej.htmls
> ErrorPage ftphpbad220 /errorpages/ftphpbad220.htmls
> ErrorPage ftphploginrej /errorpages/ftphploginrej.htmls
> ErrorPage ftphpnoconnect /errorpages/ftphpnoconnect.htmls
> ErrorPage ftphpnoresponse /errorpages/ftphpnoresponse.htmls
> ErrorPage ftphpnosocket /errorpages/ftphpnosocket.htmls
> ErrorPage ftphpunreshost /errorpages/ftphpunreshost.htmls
> ErrorPage ftploginrej /errorpages/ftploginrej.htmls
> ErrorPage ftploginreq /errorpages/ftploginreq.htmls
> ErrorPage ftpnoconnect /errorpages/ftpnoconnect.htmls
> ErrorPage ftpnodata /errorpages/ftpnodata.htmls
> ErrorPage ftpnoresponse /errorpages/ftpnoresponse.htmls
> ErrorPage ftpnosocket /errorpages/ftpnosocket.htmls
> ErrorPage ftpunrechost /errorpages/ftpunrechost.htmls
> ErrorPage ftpunreshost /errorpages/ftpunreshost.htmls
> ErrorPage hpforbidden /errorpages/hpforbidden.htmls
> ErrorPage httpnodata /errorpages/httpnodata.htmls
> ErrorPage httpnoforward /errorpages/httpnoforward.htmls
> ErrorPage httpnosend /errorpages/httpnosend.htmls
> ErrorPage httpunreshost /errorpages/httpunreshost.htmls
> ErrorPage ipmask /errorpages/ipmask.htmls
> ErrorPage ipmaskproxy /errorpages/ipmaskproxy.htmls
> ErrorPage methoddisabled /errorpages/methoddisabled.htmls
> ErrorPage multifail /errorpages/multifail.htmls
> ErrorPage noaccess /errorpages/noaccess.htmls
> ErrorPage noacl /errorpages/noacl.htmls
> ErrorPage nocachenoconn /errorpages/nocachenoconn.htmls
> ErrorPage noentry /errorpages/noentry.htmls
> ErrorPage noformat /errorpages/noformat.htmls
> ErrorPage nohostheader /errorpages/nohostheader.htmls
> ErrorPage noopen /errorpages/noopen.htmls
> ErrorPage nopartner /errorpages/nopartner.htmls
> ErrorPage norep /errorpages/norep.htmls
> ErrorPage notallowed /errorpages/notallowed.htmls
> ErrorPage notauthorized /errorpages/notauthorized.htmls
> ErrorPage notfound /errorpages/notfound.htmls
> ErrorPage notmember /errorpages/notmember.htmls
> ErrorPage olproxnocontact /errorpages/olproxnocontact.htmls
> ErrorPage openfailed /errorpages/openfailed.htmls
> ErrorPage originbadresp /errorpages/originbadresp.htmls
> ErrorPage preconfail /errorpages/preconfail.htmls
> ErrorPage proxybadurl /errorpages/proxybadurl.htmls
> ErrorPage proxyfail /errorpages/proxyfail.htmls
> ErrorPage proxynotauth /errorpages/proxynotauth.htmls
> ErrorPage proxynotmember /errorpages/proxynotmember.htmls
> ErrorPage putfailed /errorpages/putfailed.htmls
> ErrorPage rchunkerror /errorpages/rchunkerror.htmls
> ErrorPage rchunkmemory /errorpages/rchunkmemory.htmls
> ErrorPage scriptinterr /errorpages/scriptinterr.htmls
> ErrorPage scriptio /errorpages/scriptio.htmls
> ErrorPage scriptnocomm /errorpages/scriptnocomm.htmls
> ErrorPage scriptnotfound /errorpages/scriptnotfound.htmls
> ErrorPage scriptnovari /errorpages/scriptnovari.htmls
> ErrorPage scriptstart /errorpages/scriptstart.htmls
> ErrorPage servermaperror /errorpages/servermaperror.htmls
> ErrorPage setuperror /errorpages/setuperror.htmls
> ErrorPage throttled /errorpages/throttled.htmls
> ErrorPage unknownmethod /errorpages/unknownmethod.htmls
> ErrorPage outputtimeout /errorpages/outputtimeout.htmls
>
>
>
> # ========================================
============================= #
> #
> # API directives:
> #
> # ========================================
============================= #
>
> # API directives enabling plug-ins distributed with this product should


appear
quote:

> # before any user-defined plug-ins. Add user-defined plug-ins only to the


end
quote:

> # of this section (see Placeholder comment below).
>
>
>
>
> # ServerInit directive:
> #
> # Specify a customized application function you want the server
> # to call during the server's initialization routines. This code
> # will be executed before any client requests are read.
> #
> # Default: <none>
> # Syntax: ServerInit <drive:\path\file:function_name>
> #
> # Example:
> # ServerInit C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:svr_init
>
>
> # PreExit directive:
> #
> # Specify a customized application function you want the server to
> # call during the User PreExit step. This code will be executed


after
quote:

> # a client request has been read but before any other processing
> # occurs. You can call the goserve module during this step.
> #
> # Default: <none>
> # Syntax: PreExit <drive:\path\file:function_name>
> #
> # Example:
> # PreExit C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:pre_exit
>
>
> # Authentication directive:
> #
> # Specify a customized application function you want the server to
> # call during the Authentication step. This code will be executed


based
quote:

> # on the authentication scheme. Currently, only Basic


authentication
quote:

> # is supported.
> #
> # Default: <none>
> # Syntax: Authentication <type> <drive:\path\file:function_name>
> #
> # Example:
> # Authentication BASIC


C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:basic_authen
quote:

>
>
> # NameTrans directive:
> #
> # Specify a customized application function you want the server
> # to call during the Name Translation step. This code would supply
> # the mechanism for translating the virtual path in the request to
> # the physical path on the server, mapping URLs to specific


objects.
quote:

> #
> # Default: <none>
> # Syntax: NameTrans </URL> <drive:\path\file:function_name>


<IP_address_template>
quote:

> #
> # Example:
> # NameTrans /index.html


C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:trans_url
quote:

>
>
> # Authorization directive:
> #
> # Specify a customized application function you want the server
> # to call during the Authorization step. This code would verify
> # that the requested object can be served to the client.
> #
> # Default: <none>
> # Syntax: Authorization </URL> <drive:\path\file:function_name>
> #
> # Example:
> # Authorization /index.html


C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:auth_url
quote:

>
>
> # ObjectType directive:
> #
> # Specify a customized application function you want the server
> # to call during the Object Type step. This code would locate the
> # requested object in the file system and identify its MIME type.
> #
> # Default: <none>
> # Syntax: ObjectType </URL> <drive:\path\file:function_name>
> #
> # Example:
> # ObjectType /index.html


C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:obj_type
quote:

>
>
> # PostAuth directive:
> #
> # Specify a customized application function you want the server to
> # call during the User PostAuth step. This code will be executed


after
quote:

> # authorization/authentication and objecttype(if any) steps.
> #
> # Default: <none>
> # Syntax: PostAuth <C:\path\file:function_name>
> #
> # Example:
> # PostAuth C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:post_auth
>
>
> # Service directive:
> #
> # Specify a customized application function you want the server
> # to call during the Service step. This code would service the


client
quote:

> # request. For example, it sends the file or runs the CGI program.
> #
> # Default: <none>
> # Syntax: Service </URL> <drive:\path\file:function_name>


<IP_address_template>
quote:

> #
> # Example:
> # Service /index.html


C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:serve_req
quote:

>
>
> # Transmogrifier directive:
> #
> # Specify a customized application function you want the server
> # to call during the Transmogrifier step. This code would provide


four
quote:

> # application functions: an open function, a write function, a


close
quote:

> # function, and an error function.
> #
> # Default: <none>
> # Syntax: Transmogrifier


< drive:\path\file:open_function_name:writ
e_function_name:close_function_name
:error_function_name>
quote:

> #
> # Example:
> # Transmogrifier


C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:my_open:my_write:my_close:
my_error
quote:

>
>
> # TransmogrifiedWarning directive:
> #
> # When a customized application function is specified that you want


the proxy
quote:

> # to call during the Transmogrifier step, WTE will send a warning


message
quote:

> # (e.g. "Warning: 214 hostname") to the client informing it that


the data has been
quote:

> # transmogrified. In some cases, a browser that receives this


message will fail
quote:

> # with an 'unknown error' message. This Directive allows the


administrator to
quote:

> # disable the warning message sent from the proxy.
> #
> # Default: <YES>
> #
> # Syntax: transmogrifiedwarning <YES | NO>
>
>
> # Log directive:
> #
> # Specify a customized application function you want the server
> # to call during the Log step. This code would supply logging and
> # other processing you want performed after the connection has
> # been closed.
> #
> # Default: <none>
> # Syntax: Log </URL> <drive:\path\file:function_name>
> #
> # Example:
> # Log /index.html


C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:log_url
quote:

>
>
> # Error directive:
> #
> # Specify a customized application function you want the server
> # to call during the Error step. This code would execute only when
> # an error is encountered to provide customized error routines.
> #
> # Default: <none>
> # Syntax: Error </URL> <drive:\path\file:function_name>
> #
> # Example:
> # Error /index.html


C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:error_rtns
quote:

>
>
> # PostExit directive:
> #
> # Specify a customized application function you want the server
> # to call during the Post-exit step. This code will be executed
> # regardless of the return codes from previous steps. It allows
> # you to clean up any resources allocated to process the request.
> #
> # Default: <none>
> # Syntax: PostExit <drive:\path\file:function_name>
> #
> # Example:
> # PostExit C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.dll:post_exit
>
>
> # ServerTerm directive:
> #
> # Specify a customized application function you want the server
> # to call during the Server Termination step. This code would
> # execute when an orderly shutdown occurs and allows you to
> # release resources allocated by a PreExit application function.
> #
> # Default: <none>
> # Syntax: ServerTerm <drive:\path\file:function_name>
> #
> # Example:
> # ServerTerm C:\Progra~1\IBM\edge\cp\samples\sample_p
lugin.so:shut_down
>
>
> # Midnight directive:
> #
> # Specify a customized application function you want the server
> # to call at midnight.
> #
> # Default: Midnight C:\Progra~1\IBM\edge\cp\bin\archive.dll:begin
> # Syntax: Midnight <drive:\path\file:function_name>
> Midnight C:\PROGRA~1\IBM\edge\cp\Bin\archive.dll:begin
>
> # The following directives are used by the Content Distribution Framework.
> #
> # CdfAware
> #
> # This directive is used to mark this WTE instance as being part of a
> # Content Distribution Framework
> #
> #
> # CdfRestartFile
> #
> # WTE maintains a mapping table that associates a requested URL to its


filename
quote:

> # on the webserver. This file is used for persistent storage of this


table
quote:

> # so as to preserve its contents during restarts
> #
> #
> # ServerInit
> #
> # This directive is required to load the Content Distribution Agent which


is
quote:

> # distributed as a plugin
> #
> # ========================================
=====================
> #
> # CdfAware yes
> #
> # CdfRestartFile c:\progra~1\IBM\EDGE\CDIST\DATA\cdfResta
rtFile
>
> # ServerInit c:\progra~1\IBM\EDGE\CDIST\lib\cpagent.dll:cdca_Start
> # Following are examples of the API directives required by the
> # plug-ins distributed with this product. Uncomment (and edit,
> # if necessary) these directives to include support for each
> # desired plug-in.
> # These plug-in API directives should be included in this order.
> # Plug-ins may not work correctly together if reordered.
>
>
> # ===== ICP Plug-in =====
> # Uncomment ServerInit to enable an ICP server. Uncomment PreExit to


enable an ICP client.
quote:

> # ServerInit


C:\Progra~1\IBM\edge\cp\lib\plugins\icp\
icp_plugin.dll:icpServer
quote:

> # PreExit C:\Progra~1\IBM\edge\cp\lib\plugins\icp\
icp_plugin.dll:icpClient
>
>
> # ===== CBR Plug-in =====
> # ServerInit C:\Progra~1\IBM\edge\lb\servers\lib\libn
dcbr.dll:ndServerInit
> # PostAuth C:\Progra~1\IBM\edge\lb\servers\lib\libn
dcbr.dll:ndPostAuth
> # PostExit C:\Progra~1\IBM\edge\lb\servers\lib\libn
dcbr.dll:ndPostExit
> # ServerTerm C:\Progra~1\IBM\edge\lb\servers\lib\libn
dcbr.dll:ndServerTerm
>
> # ===== LDAP Plug-in =====
> # ServerInit


C:\Progra~1\IBM\edge\cp\lib\plugins\pac\
pacwte.dll:pacwte_auth_init
C:\Progra~1\IBM\edge\cp\etc\paccp.conf
quote:

> # Authorization http://protectarea


C:\Progra~1\IBM\edge\cp\lib\plugins\pac\
pacwte. dll:pacwte_auth_policy
quote:

> # ServerTerm


C:\Progra~1\IBM\edge\cp\lib\plugins\pac\
pacwte. dll:pacwte_shutdown
quote:

>
> # ===== JSP Plug-in =====
> # Service /WES_External_Adapter


C:\Progra~1\IBM\edge\cp\lib\plugins\dyna
cache\dyna_plugin.dll:exec_dynacmd
quote:

>
> # ===== Application Router Plug-in =====
> # ServerInit


C:\Progra~1\IBM\edge\cp\lib\plugins\appr
outer\approuter. dll:approuter_init
quote:


> # PostAuth


C:\Progra~1\IBM\edge\cp\lib\plugins\appr
outer\approuter.dll:approuter_offloa
d
quote:

> # ServerTerm


C:\Progra~1\IBM\edge\cp\lib\plugins\appr
outer\approuter. dll:approuter_term
quote:


> # The following directive allows automatic disabling of the edge


application
quote:

> # offload on exception conditions.
> # Log *


C:\Progra~1\IBM\edge\cp\lib\plugins\appr
outer\approuter.dll:approuter_failov
er
quote:

>
> # ===== Junction URL Rewrite Plug-in =====
> #ServerInit


C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw.dll:modrw_init
quote:

> #Transmogrifier


C:\Progra~1\IBM\edge\cp\lib\plugins\mod_
rewrite\mod_rw.dll:modrw_open:modrw_
write:modrw_close:modrw_error
quote:
[col
or=darkred]
>
>
> # ===== Placeholder - add new user-defined plug-ins here =====
>
>
> # ========================================
============================= #
> #
> # User authentication and document protection
> #
> # ========================================
============================= #
>
>
> # Within the configuration file, three directives define file
> # access protection: Protect, DefProt, and Protection.
> #
> # A Protection setup contains subdirectives that define how a set
> # of resources is to be protected. The protection setup is used on
> # a DefProt or Protect directive. The subdirectives can be coded
> # * on a preceding Protection directive
> # * in-line on the DefProt or Protect directive
> # * in a separate protection file
> #
> # The Protect and DefProt directives define the association of a
> # Protection setup with a set of resources to be protected.
> # * The DefProt statement associates a Protection setup with a[/color]

URL
quote:

> # template but does not activate protection.
> # * The Protect statement associates a Protection setup with a


URL
quote:

> # template and activates the protection.
> #
> # If your server has multiple network connections, you can


optionally
quote:

> # specify an address template on either the DefProt or Protect


directive
quote:

> # to restrict the server to using the directive only for requests


that
quote:

> # come to the server on a connection with an address matching the
> # template.
> #
> # Proxy and ProxyWAS also support third or forth parameter with


value of
quote:

> # USESESSION. This value will tell proxy to reserve a server side


connection for
quote:

> # this client's persist requests. Then socket will remain the same


for subrsequent
quote:

> # request from same client side socket, until one of followings is


happened:
quote:

> # 1. Client or server closes the connection.
> # 2. server ip or port mis-match with that reserved


connection.
quote:

> # 3. network error.
> #
> # NOTE: The address of the server's network connection is compared


to
quote:

> # the template, NOT the address of the requesting client.
> #
> # You can specify a complete IP address (for example, FOR


9.67.106.79),
quote:

> # or you can use a wildcard(*) character and specify a template
> # (for example, FOR 9.83.*).
> #
> #
> # Protection directive:
> #
> # Default: <none>
> # Syntax: Protection setup-name { directives }
> #
> # Within the braces, any combination of twelve (12)


possible
quote:

> # protection subdirectives can be defined:
> # UserID, GroupID, ServerID, AuthType,
> # GetMask, PutMask, PostMask, DeleteMask, Mask,
> # PasswdFile, GroupFile
> #
> #
> # Protect directive:
> #
> # Default: <none>
> # Syntax for a Protect directive pointing to a Protection


directive:
quote:

> # Protect request-template setup-name [FOR


IP-address-label]
quote:

> #
> # Syntax for a Protect directive with protection settings defined
> # inline:
> # Protect request-template [IP-address-label] {
> # protection setting
> # protection setting
> # .
> # .
> # .
> # }
> # Example:
> # Protect /secret/* CustomerA-PROT
> # Protect /secret/* {
> # ServerID ServerName
> # AuthType Basic
> # PasswdFile C:\docs\www\restricted.pwd
> # GroupFile C:\docs\www\restricted.grp
> # GetMask authors
> # }
> # Protect /secret/* CustomerA-PROT FOR 9.67.106.79
> # Protect /secret/* 9.83.* {
> # ServerID ServerName
> # AuthType Basic
> # PasswdFile C:\docs\www\restricted.pwd
> # GroupFile C:\docs\www\restricted.grp
> # GetMask authors
> # }
> #
> #
> # DefProt directive:
> #
> # Syntax for a DefProt directive pointing to a Protection


directive:
quote:

> # DefProt request-template setup-name [FOR


IP-address-label]
quote:

> #
> # Syntax for a DefProt directive with protection settings defined
> # inline:
> # DefProt request-template [IP-address-label] {
> # protection setting
> # protection setting
> # .
> # .
> # .
> # }
> #
> # Example:
> # DefProt /secret/* CustomerA-PROT
> # DefProt /secret/* {
> # ServerID ServerName
> # AuthType Basic
> # PasswdFile C:\docs\www\restricted.pwd
> # GroupFile C:\docs\www\restricted.grp
> # GetMask authors
> # }
> # DefProt /secret/* CustomerA-PROT FOR 9.67.106.79
> # DefProt /secret/* 9.83.* {
> # ServerID ServerName
> # AuthType Basic
> # PasswdFile C:\docs\www\restricted.pwd
> # GroupFile C:\docs\www\restricted.grp
> # GetMask authors
> # }
> #
> #
> # Example DefProt and Protect and Protection directives:
> #
> # Protection setup by usernames; specify groups in the group
> # file, if you need groups; create and maintain password files
> # with the htadm program.
> #
> # Protection PROT-SETUP-USERS {
> # ServerId YourServersFancyName
> # AuthType Basic
> # PasswdFile /where/ever/passwd
> # GroupFile /where/ever/group
> # GET-Mask user, user, group, group, user
> # }
> #
> #
> # Protection setup by hosts; you can use both domain name
> # templates and IP number templates
> #
> # Protection PROT-SETUP-HOSTS {
> # ServerId YourServersFancyName
> # AuthType Basic
> # PasswdFile /where/ever/passwd
> # GroupFile /where/ever/group
> # GET-Mask @(*.cern.ch, 128.141.*.*, *.ncsa.uiuc.edu)
> # }
> # DefProt /very/secret/URL/*
> # Protect /very/secret/URL/* PROT-SETUP-USERS
> # Protect /another/secret/URL/* PROT-SETUP-HOSTS
> #
>
> Protection PROT-ADMIN {
> PasswdFile


C:\PROGRA~1\IBM\edge\cp\server_root\prot
ect\webadmin.passwd
quote:

> Mask All@(*)
> PostMask All@(*)
> PutMask All@(*)
> GetMask All@(*)
> AuthType Basic
> ServerID Private_Authorization
> }
>
> Protect /admin-bin/* PROT-ADMIN
> Protect /reports/* PROT-ADMIN
> Protect /Usage* PROT-ADMIN
>
>
>
> Service /ndadvisor INTERNAL:NDAdvisor
> Service /Usage* INTERNAL:UsageFn
> Service /admin-bin/trace* INTERNAL:TraceFn
>
>
> # ========================================
============================= #
> #
> # Significant URL Terminator directive
> #
> # ========================================
============================= #
>
>
> # The SignificantUrlTerminator is useful for increasing the cache hit
> # rate when you know that all URLs with the same significant part will
> # return the same response from the server regardless of the value
> # following the significant part.
>
> # This directive sets a terminating pattern for URL requests. Only the
> # part of the URL before the terminator is evaluated to determine whether
> # the response is cached.
>
> # You can have multiple entries for this directive.
>
> # Default: <none>
> # Syntax: SignificantUrlTerminator <pattern>
> #
> # Example:
> #
> # SignificantUrlTerminator &.
> # SignificantUrlTerminator ^^^^^
>
> # http://www.abc.com/cgi.asp?id=0044&.x=045;y=003
> #
> # If the response to the URL is the same regardless of the values of x
> # and y, you can set SignificantUrlTerminator to &. to tell the proxy to
> # consider only the value up to &. (i.e.,


http://www.abc.com/cgi.asp?id=0044)
quote:

> #
>
> #


========================================
====================================
===================
quote:

> #
> # URL Rewriting rules and directives
> #
> #


========================================
====================================
===================
quote:

> #
> # ReversePass rule:
> # Usage similar to that of Proxy rule. This rule is used to match
> # redirected URLs (301) so that they are rewritten to point to the
> # proxy.
> # Default : none
> # Syntax: ReversePass <from URL> <to URL>
>
> # JunctionRewrite directive:
> # A Junction is defined as proxy rule (see next section) that maps


a
quote:

> # virtual URL directory to the document root of a Origin Server.
> # The JunctionRewrite directive controls the ability of proxy to


rewrite
quote:

> # responses from such origin servers so that they preserve the


virtual
quote:

> # url space of the web site.
> # Junctions are defined by the proxy rule mapping. (Mapping rules


section)
quote:

> # This directive works in conjunction with the enabling of the


Junction
quote:

> # rewriting plugin (which appears in System Plugins section).
> # Valid junctions appear as
> # Proxy /shop/* http://shopserver.acme.com/*
> # Proxy /auth/* http://authserver.acme.com/*
> # Proxy /market/partners/* http://b2bserver.acme.com/*
> # Valid junctions that have no effect on rewriting are
> # Proxy /* http://defaultserver.acme.com/*
> # Invalid junctions are
> # Proxy /images/*.gif


http://imageserver.acme.com/images/gifs/*.gif
quote:

> # Proxy /cgi-bin/* http://cgiserver.acme.com/cgi/perl/*
> #
> # If UseCookie is enabled, backend server information will be


stored
quote:

> # in a cookie header and sent to client. No rewrite is needed and


the
quote:

> # plugin could be commented out. To use this feature, client


browser must
quote:

> # support cookie.
> #
> # Default: off useplugin
> # Syntax: JunctionRewrite <on | off> [ UsePlugin | UseCookie ]
> #
>
> # ========================================
============================= #
> #
> # Mapping rules
> #
> # ========================================
============================= #
>
>
> # The Pass, Fail, Exec, Map, Redirect, Proxy and ProxyWAS rules are
> # used for mapping a request URL to another URL or a physical file.
> #
> # The rules specify templates and a file directory or new URL to


replace
quote:

> # the template in the request. If a request comes in and the URL of


the
quote:

> # request matches one of the mapping rules, the rule is applied.


Asterisks
quote:

> # are used as wild cards and must appear in both the request


template and
quote:

> # the replacement template. The Fail rule does not have a


replacement template.
quote:

> #
> # The Pass, Fail, and Exec rules are used for mapping from a


request URL
quote:

> # to a physical file. The Map rule is used for mapping from one url


to
quote:

> # another. The Proxy rule is used for mapping from a request URL


to a URL
quote:

> # which will be passed on to another server and requires a full URL


in the
quote:

> # replacement template. Redirect will direct the client to pass


the request
quote:

> # on to another server and requires a full URL in the replacement


template.
quote:

> #
> # The ProxyWAS rule is almost identical to a Proxy rule and is used as an
> # indication to the Caching Proxy that the origin server being proxied is


a
quote:

> # WebSphere Application Server 4.0 machine. This allows Proxies that
> # have a security proxy function to relay security information to the


origin
quote:

> # server for use by J2EE applications. This rule is intended for use in a
> # reverse proxy or security proxy deployment.
> #
> # The rules are applied in the order they appear in the


configuration file
quote:

> # until a request template has been matched or until there are no


more rules
quote:

> # to apply. The Map rule will modify the request as defined by the


replacement
quote:

> # template and then will continue processing the remaining rules


against the
quote:

> # mapped request. All other rules will stop applying rules once


one of the
quote:

> # rules has been matched.
> #
> # If your server has multiple network connections or you want to


differentiate
quote:

> # traffic coming in on different ports, you can optionally specify


an
quote:

> # address/port template to restrict the server to using the


directive only
quote:

> # for requests that come to the server on a connection with an


address/port
quote:

> # matching the template.
> #
> # NOTE: the address/port of the server's network connection is


compared
quote:

> # to the template, not the address of the requesting client.
> #
> # You can specify a complete IP address (for example, 9.67.106.79)


or a
quote:

> # a specific port (for example, :443) or a IP address:port template


(for
quote:

> # example 128.22.49.5:80).
> #
> # Default: <none>
> # Syntax: rule request-template result [IP-address-template]
> #
> #
> # Example:
> # Exec /cgi-bin/* /CGI-BIN/CustomerA/* 9.67.109.79
> # Map /data/* /www/data/*
> # Map /mess/* /www/junk/*
> # Map /books/stuff/* /www/docs/*
> # Fail /bogus/* 9.67.105.79
> # Fail /ddd/eee/*
> # Redirect /old/server/* http://new.server.loc/newpath/*
> # Proxy /hosta/* http://hosta/*
> # ProxyWAS /hostwas/* http://hostwas/*
> # Proxy /hostb/* http://hostb/* 128.22.49.5:80
> # Pass /buck/* C:\diskx\bin\*
>
>
> # Scripts; URLs starting with /cgi-bin/ will be understood as
> # script calls in the directory


C:\Progra~1\IBM\edge\cp\server_root\cgi-bin\
quote:

> #
> # URLs starting with /admin-bin/ will be understood as
> # script calls in the directory C:\Progra~1\IBM\edge\cp\Admin\
> #
> Exec /Docs/admin-bin/* C:\PROGRA~1\IBM\edge\cp\server_root\Admi
n\*
> Exec /cgi-bin/* C:\PROGRA~1\IBM\edge\cp\server_root\CGI-Bin\*
> Exec /Docs/cgi-bin/* C:\PROGRA~1\IBM\edge\cp\server_root\cgi-bin\*
> Exec /Docs/admin-bin/*


C:\PROGRA~1\IBM\edge\cp\server_root\admi
n-bin\en_US\*
quote:

>
> Pass /cpicons/statusSB.gif


C:\PROGRA~1\IBM\edge\cp\server_root\cpic
ons\en_US\statusSB.gif
quote:

> Pass /admin-bin/webexec/javaLoadingApplet.class


C:\PROGRA~1\IBM\edge\cp\server_root\admi
n-bin\webexec\javaLoadingApplet.clas
s
quote:

> Pass /admin-bin/webexec/webexec.jar


C:\PROGRA~1\IBM\edge\cp\server_root\admi
n-bin\webexec\webexec.jar
quote:

> Pass /admin-bin/webexec/concept.style


C:\PROGRA~1\IBM\edge\cp\server_root\admi
n-bin\webexec\concept.style
quote:

> Pass /cpicons/statusSB.gif


C:\PROGRA~1\IBM\edge\cp\server_root\cpic
ons\en_US\statusSB.gif
quote:

> Pass /cpicons/* C:\PROGRA~1\IBM\edge\cp\server_root\cpic
ons\*
> Pass /httpd-internal-icons/*


C:\PROGRA~1\IBM\edge\cp\server_root\cpic
ons\*
quote:

> Pass /icons/*


C:\PROGRA~1\IBM\edge\cp\server_root\cpic
ons\*
quote:

> Pass /Admin/help.gif


C:\PROGRA~1\IBM\edge\cp\server_root\Admi
n\help.gif
quote:

> Pass /Admin/home.gif


C:\PROGRA~1\IBM\edge\cp\server_root\Admi
n\home.gif
quote:

> Pass /Admin/helpicon.gif


C:\PROGRA~1\IBM\edge\cp\server_root\Admi
n\helpicon.gif
quote:

> Pass /Admin/restarticon.gif


C:\PROGRA~1\IBM\edge\cp\server_root\Admi
n\restarticon.gif
quote:

> Pass /Admin/*.gif


C:\PROGRA~1\IBM\edge\cp\server_root\Admi
n\en_US\*.gif
quote:

> Pass /Admin/*.html


C:\PROGRA~1\IBM\edge\cp\server_root\Admi
n\en_US\*.html
quote:

> Pass /Admin/*


C:\PROGRA~1\IBM\edge\cp\server_root\Admi
n\CODE_PAGE*
quote:

> Pass /Docs/arrow*.gif


C:\PROGRA~1\IBM\edge\cp\server_root\Docs
\arrow*.gif
quote:

> Pass /Docs/top.gif


C:\PROGRA~1\IBM\edge\cp\server_root\Docs
\top.gif
quote:

> Pass /Docs/up-arrow.gif


C:\PROGRA~1\IBM\edge\cp\server_root\Docs
\up-arrow.gif
quote:

> Pass /Docs/NavBar.*


C:\PROGRA~1\IBM\edge\cp\server_root\Docs
\NavBar.*
quote:

> Pass /Docs/JohnNav.class


C:\PROGRA~1\IBM\edge\cp\server_root\Docs
\JohnNav.class
quote:

> Pass /Docs/JohnNode.class


C:\PROGRA~1\IBM\edge\cp\server_root\Docs
\JohnNode.class
quote:

> Pass /Docs/htmldocs/*


C:\PROGRA~1\IBM\edge\doc\en_US\*
quote:
[
color=darkred]
> Pass /Docs/*[/color]

C:\PROGRA~1\IBM\edge\cp\server_root\Docs
\en_US\*
quote:

> Pass /admin-bin/webexec/ibmlogo.gif


C:\PROGRA~1\IBM\edge\cp\server_root\admi
n-bin\webexec\ibmlogo.gif
quote:

> Pass /admin-bin/webexec/*


C:\PROGRA~1\IBM\edge\cp\server_root\admi
n- bin\webexec\en_US\*
quote:

> Exec /admin-bin/*


C:\PROGRA~1\IBM\edge\cp\server_root\admi
n-bin\*
quote:

> Pass /wsApplet/*


C:\PROGRA~1\IBM\edge\cp\server_root\admi
n-bin\webexec\*
quote:

> Pass /errorpages/*


C:\PROGRA~1\IBM\edge\cp\server_root\pub\
en_US\errorpages\*
quote:


> Pass /pac/*


C:\PROGRA~1\IBM\edge\cp\etc
quote:
[color
=darkred]
> Pass /pacfiles/*[/color]

C:\PROGRA~1\IBM\edge\cp\etc
quote:
[color
=darkred]
>
>
>
> #
> # URL translation rules; If your documents are under
> #
> # NOTE: The installation defaults should be added below
> # *** START NEW MAPPING RULES SECTION ***
>
>
> # *** END NEW MAPPING RULES SECTION ***
> Pass /*[/color]

C:\PROGRA~1\IBM\edge\cp\server_root\pub\
en_US\*
quote:

>
> # ========================================
============================= #
> #
> # Performance directives
> #
> # ========================================
============================= #
>
>
> # MaxActiveThreads directive:
> #
> # Defines the number of threads in system thread pool.
> #
> # Default: 100
> # Syntax: MaxActiveThreads <num>
> MaxActiveThreads 100
>
> # ConnThreads directive
> #
> # Defines the number of connection threads to be used for connection


management
quote:

> #
> # Default 5
> # Syntax: ConnThreads <num>
>
>
> # MaxPersistRequest directive:
> #
> # Maximum number of request to receive on a persistent connection.
> #
> # Default: 5
> # Syntax: MaxPersistRequest <num>
> MaxPersistRequest 5
>
>
>
>
> # DNS-Lookup directive:
> #
> # Instruct the server to look up hostnames of clients by
> # setting DNS-Lookup to "on".
> # NOTE: Turning DNS-Lookup "on" decreases server performance.
> #
> # Default: off
> # Syntax: DNS-Lookup <on | off>
> DNS-Lookup off
>
>
> # PureProxy directive:
> #
> # Specifies if the server is to be run purely as a proxy server.
> #
> # Default: on
> # Syntax: PureProxy <on | off>
> PureProxy on
>
>
> # MaxContentLengthBuffer directive:
> #
> # The server normally gives a content-length header line for every
> # document it returns. For dynamically generated documents, the


server
quote:

> # must buffer the document to compute the content length. This


directive
quote:

> # can be used to set the size of this buffer. If it is exceeded the
> # document will be returned without a content-length header field


(and
quote:

> # the connection will be forced closed: persistent connections


cannot
quote:

> # be used unless the response has a content length).
> #
> # Default: 100 K
> # Syntax: MaxContentLengthBuffer <size> <K|M>
> # (Only one keyword/value pair allowed.)
> #
> MaxContentLengthBuffer 100 K
>
>
> # ProxyPersistence directive:
> #
> # Allows persistent connections, which will significantly reduce
> # latency for users and reduce CPU load on the proxy server.
> #
> # NOTE: Supporting persistent connections requires more threads,
> # and thus more memory, on the proxy server. In addition,
> # if you have a multi-level proxy server setup, and you
> # have any old (HTTP/1.0) proxies in the network, then you
> # MUST NOT use persistent connections at the proxy.
> #
> # Default: on
> # Syntax: ProxyPersistence <on | off>
> ProxyPersistence on
>
>
> # ServerConnPool directive:
> #
> # Allows the proxy to pool together its outgoing connections to origin
> # servers. This directive will enhance performance and take
> # better advantage of origin servers that allow persistent connections.
> # Also, you may specifiy how long to keep an unused connection around
> # via the ServerConnTimeout directive.
> #
> # NOTE: This is best in a controlled environment and could cause a
> # worse performance in a forward proxy situation or one where
> # the origin servers are not HTTP 1.1 compliant.
> #
> # Default: off
> # Syntax: ServerConnPool <on | off>
> ServerConnPool off
>
> # MaxSocketPerServer directive:
> #
> # This sets the maximum number of open IDLE sockets to maintain to any
> # one origin server.
> # This is only used if the ServerConnPool is set on.
> #
> # Default: 5
> # Syntax: MaxSocketPerServer <num>
> MaxSocketPerServer 5
>
> # ServerConnTimeout directive:
> #
> # This is set to limit the time to keep an unused connection to a server.
> # This is only used if the ServerConnPool directive is set on.
> #
> # Default: 10 seconds
> # Syntax: ServerConnTimeout <time value>
> ServerConnTimeout 10 seconds
>
> # ServerConnGCRun directive:
> #
> # This sets the interval at which the garbage collection thread will
> # check for connections to the server that have timed out (set with the
> # ServerConnTimeout directive.
> # This is only used if the ServerConnPool directive is set on.
> #
> # Default: 2 minutes
> # Syntax: ServerConnGCRun <time value>
> ServerConnGCRun 2 minutes
>
>
>
> # ========================================
============================= #
> #
> # Timeout directives
> #
> # ========================================
============================= #
>
>
> # Use these directives to:
> # * limit the time to wait for the client to send a request
> # after connecting to the server before cancelling the


connection.
quote:

> # * limit the time allowed without network activity before
> # cancelling the connection.
> # * limit the time to allow for sending output to the client.
> # * limit the time to allow for CGI programs to finish.
> # (If the program does not finish within allotted time, the


server
quote:

> # will kill the CGI program.)
> # * limit the time to wait for the client t