Any $variable can be used as a variable in an expression. To mirror the Client tag syntax, the $ prefix is optional for predefined variable names in expressions. For example, the following three portions of obj.conf are all semantically equivalent:
<If $uri = "*.html"> ... </If> <If uri = "*.html"> ... </If> <Client uri = "*.html"> ... </Client>
Any variable names you define must use the $ prefix. For example, the following expression is invalid even if somecustomvariable is defined in a server.xml variable element:
<If somecustomvariable = "foo"> ... </If>
To make this expression valid, add the dollar sign prefix:
<If $somecustomvariable = "foo"> ... </If>