Rewrite-dispatch

From Resin 3.0

(Difference between revisions)
Jump to: navigation, search
(renamed tag to directive)
Line 1: Line 1:
 
[[Category:Configuration]]
 
[[Category:Configuration]]
  
The <rewrite-dispatch> tag rewrites and dispatches rules similar to the Apache mod_rewrite module.  It can appear in the <[[host]]> or the <[[web-app]]> tags.
+
The <rewrite-dispatch> directive rewrites and dispatches rules similar to the Apache mod_rewrite module.  It can appear in the <[[host]]> or the <[[web-app]]> directives.
  
 
== Overview ==
 
== Overview ==
  
The <rewrite-dispatch> tag tries each sub-tag in order for a [[regular expression]] match.  The first matching tag redirects the request.
+
The <rewrite-dispatch> directive tries each sub-directive in order for a [[regular expression]] match.  The first matching directive redirects the request.
  
 
== 302 Redirecting a URL ==
 
== 302 Redirecting a URL ==

Revision as of 20:23, 21 February 2006


The <rewrite-dispatch> directive rewrites and dispatches rules similar to the Apache mod_rewrite module. It can appear in the <host> or the <web-app> directives.

Contents

Overview

The <rewrite-dispatch> directive tries each sub-directive in order for a regular expression match. The first matching directive redirects the request.

302 Redirecting a URL

To redirect a URL with a HTTP 302 redirect use:

<rewrite-dispatch>
  <redirect regexp='^/foo' target='/bar'/>
</rewrite-dispatch>

301 Permanently Move a URL

To redirect a URL with a HTTP 301 moved-permanently use:

<rewrite-dispatch>
  <moved-permanently regexp='^/foo' target='/bar'/>
</rewrite-dispatch>

(requires Resin 3.0.18)

Forwarding a URL

To internally forward a URL to a target using the Servlet forward() call use:

<rewrite-dispatch>
  <forward regexp='^/foo' target='/bar'/>
</rewrite-dispatch>

403 Forbidden

To send a HTTP 403 forbidden message for a URL, use:

<rewrite-dispatch>
  <forbidden regexp="^/foo"/>
</rewrite-dispatch>

404 Not Found

To send a HTTP 404 Not Found message for a URL, use:

<rewrite-dispatch>
  <not-found regexp="^/foo"/>
</rewrite-dispatch>

410 Gone

To send a HTTP 410 Gone message for a URL, use:

<rewrite-dispatch>
  <gone regexp="^/foo"/>
</rewrite-dispatch>
Personal tools