我有位置匹配正则表达式
ScriptAlias /script /var/www/somescript.bash
Action some-handler /script virtual
<LocationMatch "/(?:\w+:)?\/\/[^\/]+([^?#]+)/">
SetHandler some-handler
</LocationMatch>
现在,当测试该正则表达式https://regex101.com/r/lO0aV1/1时,您可以看到该位置已匹配,但 somescript.bash 从未执行。
mod_actions 顺便说一句。
在错误日志中,我什么也没看到。在访问日志中,我得到了 404。
如何检查此正则表达式是否有效?反正我可以记录吗?
制作一个 CustomLog,例如:
并使用 SetEnv 设置 INDICATOR_VAR:
检查 LocationMatch 是否有效的最简单方法是在其中放置一个简单的 mod_headers 指令并将响应标头转储到测试客户端上。例如
Header set X-DEBUG foo