I Love the new apache httpd 2.4 with lots of new cool stuff !
ap_expr is one of these new very promising features,
..BUT the following SSI snippet don't work as expected:
{{if expr="v('HTTP_SESSION') =~ /-user=([^&]+)/"}}
{{set var="user" value="$1"}}
{{endif}}
The if is working BUT the var isn't set ! This doesn't make any sense.
error.log says:
.. AH01330: regex capture $1 is out of range
The doc (http://httpd.apache.org/docs/2.4/expr.html#other) is confusing and have no samples anywhere near.
I know that there is a legacy (workaround) switch for SSI.. but I don't want to use it since old Start- and End-tags are forced Legacy
Doing similar regex-parsing-tricks w SetEnvIfExpr is not helping either
According to the documentation:
You are using a capturing group and you are referencing that using index
1, this should be ok using a standard regex engine, but according to the documentation you can reference from$0...$9. I guess apache is filling the inde0with your capturing group instead of1and that's you get theregex capture $1 is out of rangeChange the index
$1to$0by using: