Review available match types for Forward Rewrite

Available match types

Before you start setting up your Forward Rewrite rules, review the match types available with this Cloudlet:

Match TypeMatches Based on...Wildcard SupportCase Sensitivity SupportMultiple Value Support
Cookiea combination of cookie name and cookie value.
Device Characteristicsa list of available device characteristics.
File Extensionthe file extensions to match on.
Hostnamethe hostnames to match on.
IP address/CIDR listan IP address or CIDR list. You can also select whether to use the client IP address from the connecting IP address, the X-Forwarded-For HTTP header value, or either option.
Protocolthe protocol to match on. HTTP or HTTPS protocol are the current options, and you can only select one protocol per match.
Proxywhether the edge platform has determined that the incoming IP address is acting as a proxy.
Query Stringthe query string values to match on. For example, name or name=value1 or name=value1 value2 .
Request Headera request header value.
Request Methodthe method used for the request, like GET or POST .
URL Paththe URL paths to match on. For example: /clothing/children/shoes/shoe1.jpg
URL Regular Expressiona regular expression. For more information see the Forward Rewrite regular expression example.
User Location Dataa combination of the following geographic categories: continent, country, and region/state.

Forward Rewrite regular expression example

Here's how you can set up a regex rule for forwarding both HTTP and HTTPS traffic from the same inbound URL to a different outbound URL:

forward-rewrite-regular-exp-example

In this case, the Regular Expression value is (?:http|https)://(?:[A-z0-9|\.]*)/(.*) and the Path and Query String value, with substitution pattern, is /\1&extra_param=bar.

📘

For Forward Rewrite, you can only use substitution patterns on the URL path. If you want to change the protocol or host, you need to use Conditional Origins.

When this rule is activated, all requests to http://www.example.com/path1/path2/home.html?query=foo would retrieve content from http://www.neworigin.com/path1/path2/home.html?query=foo&extra_param=bar without changing the URL.

📘

If your regular expression includes any characters that have a special use in regular expressions (like ".", "+", or "?"), you must use a backslash ( \ ) to escape each special character.