X-Git-Url: http://git.home-dn.net/?p=manu%2Fmod-proxy-html.git;a=blobdiff_plain;f=config.html;h=87d7f0dae95b46b1a681bd5f22cde03294b2de13;hp=7b062dc3c3a1512810da76a1c068686936468f20;hb=5e5032129599538ea115b63e68b24227a80d2491;hpb=e2a89f3329582da3ca7b270db0f99c6fc20b2155 diff --git a/config.html b/config.html index 7b062dc..87d7f0d 100644 --- a/config.html +++ b/config.html @@ -8,15 +8,23 @@
mod_proxy_html Version 2.4 (Sept 2004) and upwards
+mod_proxy_html Version 3.1 (April 2009).
The following can be used anywhere in an httpd.conf or included configuration file.
Syntax: ProxyHTMLEnable On|Off
Enables mod_proxy_html filtering in a scope (<Location>
+or top level/virtualhost). This also configures mod_xml2enc if present, and replaces use of
+any generic filter configuration (e.g. SetOutputFilter
+or FilterProvider
) to configure both these modules.
Syntax:
-ProxyHTMLURLMap from-pattern to-pattern flags
ProxyHTMLURLMap from-pattern to-pattern [flags] [cond]
This is the key directive for rewriting HTML links. When parsing a document, whenever a link target matches from-pattern, the matching portion will be rewritten to to-pattern.
@@ -24,6 +32,13 @@ portion will be rewritten to to-pattern. and substitutions, including regular expression search and replace, controlled by the optional thirdflags
argument.
+Starting at version 3.0, this also supports environment variable
+interpolation using the V and v flags, and rules may apply conditionally
+based on an environment variable. Note that interpolation takes place
+before the parse starts, so variables set during the parse (e.g.
+using SSI directives) will not apply. This flexible configuration
+is enabled by the ProxyHTMLInterp
directive, or can
+be disabled for speed.
Flags are case-sensitive.
flags
argument.
Last-match. If this rule matches, no more rules are applied (note that this happens automatically for HTML links).
Opposite to L. Overrides the one-change-only default +behaviour with HTML links.
Use Regular Expression matching-and-replace. from-pattern
is a regexp, and to-pattern
a replacement string that may be
@@ -61,8 +79,35 @@ versions 1.x. Logic is starts-with in HTML links, but
Match at end only. This applies only to string matching (not regexps) and is irrelevant to HTML links.
Interpolate environment variables in to-pattern
.
+A string of the form ${varname|default}
will be replaced by the
+value of environment variable varname
. If that is unset, it
+is replaced by default
. The |default
is optional.
NOTE: interpolation will only be enabled if ProxyHTMLInterp is On.
+Interpolate environment variables in from-pattern
.
+Patterns supported are as above.
NOTE: interpolation will only be enabled if ProxyHTMLInterp is On.
+The optional cond
argument specifies a condition to
+test before the parse. If a condition is unsatisfied, the URLMap
+will be ignored in this parse.
The condition takes the form [!]var[=val]
, and is
+satisfied if the value of environment variable var
+is val
. If the optional =val
is omitted,
+then any value of var
satisfies the condition, provided
+only it is set to something. If the first character is !
,
+the condition is reversed.
NOTE: conditions will only be applied if ProxyHTMLInterp is On.
+Syntax: ProxyHTMLInterp On|Off
Enables new (per-request) features of ProxyHTMLURLMap.
Starting at version 2.0, the default is changed to omitting any FPI, on the grounds that no FPI is better than a bogus one. If your backend generates decent HTML or XHTML, set it accordingly.
+From version 3, if the first form is used, mod_proxy_html +will also clean up the HTML to the specified standard. It cannot +fix every error, but it will strip out bogus elements and attributes. +It will also optionally log other errors at LogLevel Debug.
Syntax ProxyHTMLMeta [On|Off]
Parses <meta http-equiv ...>
elements to real HTTP
headers.
In version 3, this is also tied in with the improved +internationalisation support, and is +required to support some character encodings.
Syntax ProxyHTMLExtended [On|Off]
The default is 8192, and will work well for almost all pages. However, if you know you're proxying a lot of pages containing stylesheets and/or -scripts bigger than 8K, it will be more efficient to set a larger buffer +scripts bigger than 8K (that is, for a single script or stylesheet, +NOT in total), it will be more efficient to set a larger buffer size and avoid the need to resize the buffer dynamically during a request.
Syntax ProxyHTMLEvents attr [attr ...]
Specifies one or more attributes to treat as scripting events and
+apply URLMaps to where appropriate. You can specify any number of
+attributes in one or more ProxyHTMLEvents
directives.
+The sample configuration
+defines the events in standard HTML 4 and XHTML 1.
Syntax ProxyHTMLLinks elt attr [attr ...]
Specifies elements that have URL attributes that should be rewritten
+using standard URLMaps as in versions 1 and 2 of mod_proxy_html.
+You will need one ProxyHTMLLinks
directive per element,
+but it can have any number of attributes. The sample configuration
+defines the HTML links for standard HTML 4 and XHTML 1.
Syntax ProxyHTMLCharsetOut name
This selects an encoding for mod_proxy_html output. It should not
+normally be used, as any change from the default UTF-8
+(Unicode - as used internally by libxml2) will impose an additional
+processing overhead. The special token ProxyHTMLCharsetOut *
+will generate output using the same encoding as the input.
These directives from Version 3.0 are replaced by +mod_xml2enc.
Normally, mod_proxy_html will refuse to run when not +in a proxy or when the contents are not HTML. This can be overridden +(at your own risk) by setting the environment variable +PROXY_HTML_FORCE (e.g. with the SetEnv directive).