1

为什么此规则不返回带有字符的斜杠?

RewriteRule ^test/(.+)/(.+)/(.+)/?$ test.php?one=$1&two=$2&three=$3

例如在这个 URL

mysite.com/test//一个///两个////三个///

它会回来的

$1='one' 

$2='two' 

$3='three' 

但我希望它回来

$1='/one' 

$2='//two' 

$3='///three///' 

我也尝试过^posts/{1}(.+)/{1}(.+)/{1}(.+)/?$,但它也没有工作......

我没有想到其他任何事情。任何人都可以帮忙吗?

提前致谢

4

2 回答 2

2

该 URL 之前可能已被服务器处理,删除了双斜杠。如果您匹配完整的 URL,是否所有的斜线仍然存在?

于 2012-01-01T22:14:55.733 回答
1

试试这个:

RewriteRule ^test(/+[^/]+)(/+[^/]+)(/+[^/]+/*)$ test.php?one=$1&two=$2&three=$3
于 2012-01-01T22:42:37.383 回答