我正在尝试通过Apache HTTP Server为会话cookie添加安全标志。代码正常工作,但当我尝试将其 Package 在IF子句中以运行此代码时(HOST来自acstest.com),代码无法编译。运行apacheclt -t时出现语法错误
<If "%{HTTP_HOST} =~ '\.acstest\.com'">
Header edit Set-Cookie ^ACIJSESSIONID=(.*)$ "CHIJSESSIONID=$1; Secure; SameSite=None"
Header edit Set-Cookie ^JSESSIONID=(.*)$ "JSESSIONID=$1; Secure; SameSite=None"
</If>
错误为
Cannot parse condition clause: syntax error, unexpected T_STR_BEGIN, expecting T_REGEX or T_REGEX_I
我无法诊断错误消息。
1条答案
按热度按时间3htmauhk1#
在Apache HTTP Server中有正则表达式的替代语法,在这种情况下是必要的。
<If "%{HTTP_HOST} =~ m#\.acstest\.com#">
请访问https://httpd.apache.org/docs/trunk/expr.html#other