• 8 September 2024

Previously, it was possible to change the default behavior of ArvanCloud Security products for different domain addresses with “page rules”. In the new generation of these products, this is done by defining rules in the respective product. These rules use a different type of page rule called “Glob Pattern” to specify an address.

Glob patterns are a common way to match addresses on Unix operating systems. In this way, the following meta scripts are introduced to define the pattern of a part of an address:

  • ? : a character of any kind
  • * : any string (also empty string)
  • […] : only the characters in brackets. Characters can be defined as a range (like a-z). To use “-” as one of the characters, it must be placed after the character. For example: [abc-]
  • […!] : Any character except the characters in brackets.

None of these contain the address separator “/”. For this reason, the superscript »**« (without suffix or prefix) should be used to check a pattern in all sub-branches.

Note: Glob patterns in the new generation of ArvanCloud Security are not case-sensitive.

Note: Given the common <scheme>://<hostname>/<path> form for addresses, patterns are matched only with the <hostname>/<path> part (and the / /:<scheme> part is not considered).

Assuming you are setting up the example.com domain, the following table shows examples of glob patterns and their matches and mismatches:

Pattern Conformity
**

*example.com/**

Any path from any subdomain
example.com/** Any path within example.com (and not its subdomains)
*example.com Any subdomain of example.com
example.com/test* Matches with:

example.com/test

example.com/tests

example.com/TeSt

Not Matches with:

example.com/atest

example.com/test/icon.jpg

example.com/assets/**/*.jpg Matches with:

example.com/assets/icon.jpg

example.com/assets/images/bg.jpg

example.com/assets/images/icons/ok.jpg

Not Matches with:

example.com/assets/icon.png

api.example.com/v? Matches with:

api.example.com/v1

api.example.com/v2

Not Matches with:

api.example.com/v

api.example.com/v1/items

api.example.com/v[0-9]/** Matches with:

api.example.com/v1

api.example.com/v1/items

Not Matches with:

api.example.com/v

api.example.com/va