MountOptions is a list of options, to make MOUNT be conditional,
or to apply some functions only to MOUNTed URLs.
Some of them are common to any protocol
and others are specific to a protocol (
HTTP,
NNTP
).
CONDITIONS:
The first group of options are to make MOUNT be conditional
depending on source and destination (client and server).
When a MOUNT parameter have a MountOption
including one or more conditions,
the MOUNT will be ignored without all of conditions are true.
from={HostList} -- from the client.
true if the client is included in the HostList.
via={HostList} -- via the host.
true if at least one host passed through on the way
is included in the HostList.
path={HostList} -- through the hosts.
true if all of hosts passed through is included in the HostList.
auth={HostList} -- authorized by the host.
true if a password based authentication succeeded with a
AUTHORIZER host listed in the HostList.
withssl
true if the client-side connection is encrypted with SSL or TLS
sni={HostList} -- name based virtual hosting based on SNI/TLS
true if the TLS client connected to the DeleGate with the hostname
(server name indicated in TLS protocol) included in HostList.
true if the original destination of the TCP connection from the client
is included in the HostList. This option is available on Linux
with NAT (by iptables) on Linux.
The original destination can be used as the real destination with a
special host name "odst.-".
dst={HostList} -- to the server.
true if the destination host is included in the HostList.
This option will be useful when "=" is used
as the right hand of MOUNT.
udst={HostList}
true if the host in the site part of a full-URL (as http://site/path)
is included in the HostList.
This option will be used with the "referer" MountOption to rewrite URL
in the "Referer" field.
direction=Direction -- request or response
true when the MOUNT parameter is applied to specified Direction
which is one of followings:
fo -- apply forward (request rewriting) only
bo -- apply backward (response rewriting) only
bif -- apply backward if it was applied forward
-f,conditionList -- conditions applied only in request rewriting
-b,conditionList -- conditions applied only in response rewriting
-f.condition -- a condition applied only in request rewriting
-b.condition -- a condition applied only in response rewriting
-x.condition -- a condition to be applied to both directions
"avhost" and "nvhost" are conditions tested only in request rewriting
by default. These conditions come to be tested also in response rewriting
by prefixing "-x." as "-x.nvhost=host".
pri=signedFloatNumber -- priority of this MOUNT parameter
a MOUNT parameter with larger priority value is tested prior to
another with lower priority. The default priority value is zero.
nocase -- ignore character case in URL path matching
These HostList should be a list of host:port,
where :port part can be omitted when it is not to be cared.
The host part can be represented as "*"
when the difference of network interface is not to be cared.
Example:
// switch MOUNT depending on from which interface the client is MOUNT="* URL1 host=this-host" MOUNT="* URL2 host=localhost"
// switch MOUNT depending on from which port the client is
-P70,80 MOUNT="* URL1 host=*:70" MOUNT="* URL2 host=*:80"
CONTROLS:
The second group of options are to control the behaviors of DeleGate
which are local to the MOUNT point.
public -- allow public access
do not apply any access restriction (by PERMIT etc.)
to this MOUNT point.
rident[=no] -- forward RIDENT information to server
forward (or stop forwarding) RIDENT information to the MOUNTed server
regardless of the RIDENT=server parameter.
ro -- allow read only.
applicable to NNTP (inhibit POST command) and origin FTP (default).
rw -- allow both read and write.
allow origin FTP-DeleGate to write to its local files.
cache=no -- disable cache.
disable any usage of cache for the server of this MOUNT point.
expire=period -- validity of cache
expire period of the MOUNT point, overriding the global
EXPIRE parameter.
expires=period -- validity of each response
if specified, "Expires:" field is added into each HTTP response message.
If the period begins with '+' or '-', like "expire=+1d", and if
the original message has "Expires:" header, then the expire date is
relative to the original expiration date.
ftocl=filterCommand -- apply external filter
apply the filter to the MOUNT point,
overriding the global FTOCL parameter.
charcode=charCode -- code conversion.
code conversion specific to this mount point,
overriding the global CHARCODE parameter.