如何在 ProxyPassMatch 中使用环境变量?

如何在 ProxyPassMatch 中使用环境变量?

我很难弄清楚如何在中使用环境变量ProxyPassMatch

我的一般格式:

<LocationMatch "(?<THING>Regex)">
    ProxyPassMatch http://example.com:8000/%{env:MATCH_THING}
    ProxyPassReverse /
</LocationMatch>

我已经%{MATCH_THING}e记录,并且日志显示正则表达式捕获的 URL 正在捕获我想要它捕获的内容,但是每次我尝试LocationMatched通过代理访问 URL 时,都会出现 404 Not Found。

当我直接尝试时,它起作用了http://example.com:8000/RegexCapturedURL
其中RegexCapturedURL=%{MATCH_THING}e;

ProxyPassMatch以下是我迄今为止尝试过的一些线路:

  • ProxyPassMatch http://example.com:8000/%{env:MATCH_THING}
  • ProxyPassMatch http://example.com:8000/%{MATCH_THING}
  • ProxyPassMatch http://example.com:8000/%{THING}
  • ProxyPassMatch http://example.com:8000/%{MATCH_THING}e

我做错了什么或者没有正确理解什么?

答案1

我发现这与您所寻找的非常接近。

https://stackoverflow.com/a/11852428/1459214

您可以先尝试使用正则表达式来包含更广泛的匹配,然后检查您的正则表达式是否是问题所在,如答案中所示

主要帖子在这里:https://stackoverflow.com/questions/11852238/proxypassmatch-with-proxypassreverse

相关内容