Apache mod_proxy_html替代:如何重用正则表达式的部分匹配? (正则表达式变量?)

时间:2011-02-16 22:44:51

标签: regex apache apache2 mod-proxy apache2.2

[完全披露:此处与ServerFault之间的交叉发布,因为我相信受众(服务器管理员和开发人员)足够明确,可以单独向两个人提出问题。]

大家好,

在Apache中有一个独特的URL重写情况。

我需要能够获取以

开头的网址
"\u002f[X]"

'\u002f[X]"

其中X是某些URL的其余部分,并替换文本

"\u002fmeis2\u002f[X]

我不确定Regex如何在Apache中运行 - 我认为它与Perl 5相同? - 但即便如此,我还是不确定如何做到这一点。我的预感是它与Regex分组有关,然后使用$ 1来取出变量,但我完全不熟悉Apache中的这个过程。

希望有人可以提供帮助 - 谢谢!

1 个答案:

答案 0 :(得分:1)

你是对的。将要与parens重复使用的文本分组,并在替换中使用$1。使用以下.htaccess文件:

RewriteEngine On
RewriteRule ^\u002f(.*) /\u002fmeis2\u002f$1

(我不确定mod_rewrite处理unicode转义,但从您的问题看来似乎如此。)