【发布时间】:2011-04-30 11:57:59
【问题描述】:
我一直在编写调试 mod_rewrite 的脚本,在测试他们的正则表达式系统时,我得到了一些奇怪的结果。我想知道这是否是 mod_rewrite 正则表达式引擎的正常行为,或者我的代码中的某些部分是否导致它。
请求的网址:http://myurl.com/path/to/something
.htaccess 有:RewriteRule to where
使用我的调试系统,使用 RewriteRule 时会发生以下情况:
path/to/something -> where/to/something
不应该是path/where/something???
这是完整的 .htaccess 文件
重写引擎开启
RewriteBase /ModRewriteTester
重写规则 .* - [E=ORIG:$0]
重写规则到哪里
重写规则 .* - [E=MODD:$0]
重写规则 .* index.php
然后我有一个读取环境变量$_SERVER['REDIRECT_ORIG'] 和$_SERVER['REDIRECT_MODD'] 的php 脚本,这就是我获得前面所述路径的地方。
如果有人知道更好的方法来明确展示 mod_rewrite 的正则表达式引擎如何工作,我愿意接受。最初的问题仍然存在......
【问题讨论】:
-
你确定是
where/to/something而不仅仅是where? -
是的。据我所知,这就是返回的内容。
标签: php regex mod-rewrite