diff options
Diffstat (limited to 'tests/test-webapps/test-jetty-webapp/src/main/config/demo-base/etc/demo-rewrite-rules.xml')
-rw-r--r-- | tests/test-webapps/test-jetty-webapp/src/main/config/demo-base/etc/demo-rewrite-rules.xml | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/tests/test-webapps/test-jetty-webapp/src/main/config/demo-base/etc/demo-rewrite-rules.xml b/tests/test-webapps/test-jetty-webapp/src/main/config/demo-base/etc/demo-rewrite-rules.xml new file mode 100644 index 0000000000..35a8f87582 --- /dev/null +++ b/tests/test-webapps/test-jetty-webapp/src/main/config/demo-base/etc/demo-rewrite-rules.xml @@ -0,0 +1,104 @@ +<?xml version="1.0"?> +<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd"> + +<!-- =============================================================== --> +<!-- Configure the demos --> +<!-- =============================================================== --> +<Configure id="Server" class="org.eclipse.jetty.server.Server"> + + <!-- ============================================================= --> + <!-- Add rewrite rules --> + <!-- ============================================================= --> + <Ref refid="Rewrite"> + <!-- Add rule to protect against IE ssl bug --> + <Call name="addRule"> + <Arg> + <New class="org.eclipse.jetty.rewrite.handler.MsieSslRule"/> + </Arg> + </Call> + + <!-- protect favicon handling --> + <Call name="addRule"> + <Arg> + <New class="org.eclipse.jetty.rewrite.handler.HeaderPatternRule"> + <Set name="pattern">/favicon.ico</Set> + <Set name="name">Cache-Control</Set> + <Set name="value">Max-Age=3600,public</Set> + <Set name="terminating">true</Set> + </New> + </Arg> + </Call> + + <!-- redirect from the welcome page to a specific page --> + <Call name="addRule"> + <Arg> + <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule"> + <Set name="pattern">/test/rewrite/</Set> + <Set name="replacement">/test/rewrite/info.html</Set> + </New> + </Arg> + </Call> + + <!-- replace the entire request URI --> + <Call name="addRule"> + <Arg> + <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule"> + <Set name="pattern">/test/some/old/context</Set> + <Set name="replacement">/test/rewritten/newcontext</Set> + </New> + </Arg> + </Call> + + <!-- replace the beginning of the request URI --> + <Call name="addRule"> + <Arg> + <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule"> + <Set name="pattern">/test/rewrite/for/*</Set> + <Set name="replacement">/test/rewritten/</Set> + </New> + </Arg> + </Call> + + <!-- reverse the order of the path sections --> + <Call name="addRule"> + <Arg> + <New class="org.eclipse.jetty.rewrite.handler.RewriteRegexRule"> + <Set name="regex">(.*?)/reverse/([^/]*)/(.*)</Set> + <Set name="replacement">$1/reverse/$3/$2</Set> + </New> + </Arg> + </Call> + + <!-- add a cookie to each path visited --> + <Call name="addRule"> + <Arg> + <New class="org.eclipse.jetty.rewrite.handler.CookiePatternRule"> + <Set name="pattern">/*</Set> + <Set name="name">visited</Set> + <Set name="value">yes</Set> + </New> + </Arg> + </Call> + + <!-- actual redirect, instead of internal rewrite --> + <Call name="addRule"> + <Arg> + <New class="org.eclipse.jetty.rewrite.handler.RedirectPatternRule"> + <Set name="pattern">/test/redirect/*</Set> + <Set name="location">/test/redirected</Set> + </New> + </Arg> + </Call> + + <!-- add a response rule --> + <Call name="addRule"> + <Arg> + <New class="org.eclipse.jetty.rewrite.handler.ResponsePatternRule"> + <Set name="pattern">/400Error</Set> + <Set name="code">400</Set> + <Set name="reason">ResponsePatternRule Demo</Set> + </New> + </Arg> + </Call> + </Ref> +</Configure> |