The RewriteHandler processes a list of rules and checks each in turn, ignoring those that don't match the request. It then applies the ones that match. It is inspired by Apache's mod-rewrite, but can do many things aside from rewriting URIs. Rules can also be grouped into RuleContainers, for example to restrict a set of rule to a specific virtual host
Abstract rule to use as a base class for rules that use a PathMap for pattern matching. It uses the servlet pattern syntax. Below are known subclasses of PatternRule, and descriptions of their actions:
Adds a cookie to the response.
Adds/modifies a header in the response.
Redirects the response.
Sends the response code (status or error).
Rewrite the URI by replacing the matched request path with a fixed string.
Abstract rule to use as a base class for rules that match with a regular expression. Below are known subclasses of RegexRule, and descriptions of their actions:
Rewrite the URI by matching with a regular expression. (The replacement string may use
$nto replace the nth capture group.)
Abstract rule to use as a base class for rules that match against request headers. It can match either on a headername+specific value, or on the presence of a header (with any value). Available from Jetty 6.1.12 and Jetty 7.0.0pre3 onwards. Below are known subclasses of HeaderRule, and descriptions of their actions:
Set the scheme on the request (defaulting to https).
Disables the keep alive for SSL from IE5 or IE6.
Rule implementing the legacy API of RewriteHandler
Base container to group rules. Can be extended so that the contained rules will only be processed if certain conditions apply. Available from Jetty 6.1.12 and Jetty 7.0.0pre3 onwards
Groups rules that apply only to a specific virtual host or a set of virtual hosts
Contains rules that are executed when the thread pool is low on threads. For example, you can choose to or send an error code or redirect the response.
There is a sample file provided. To use this configuration, install the rewrite handler, so that it will copy files to the proper locations,
then include the configuration file during jetty startup: