RewriteRule进入子目录失败

时间:2011-05-16 09:20:23

标签: php regex .htaccess mod-rewrite

基本上,这可行(http://example.com/@user):

  

RewriteRule ^ @([a-zA-Z0-9] +)[/] * $   find.php?twitter = $ 1 [QSA,L]

和此(http://example.com/api/@user):

  

RewriteRule ^ api / @([a-zA-Z0-9] +)[/] * $ twitter.php?username = $ 1 [QSA,L]

没有。我不确定为什么,但似乎每当我尝试这样做时,如果有意义的话,它会重定向到http://example.com/@user的函数。基本上,重写规则忽略了“api /”前缀。

1 个答案:

答案 0 :(得分:1)

我在测试服务器上尝试了以下语法,它完美地找到了。如果不适合你,问题可能不在于正则表达式...

RewriteEngine on 

RewriteRule ^api/@([a-zA-Z0-9]+)/?$ twitter.php?username=$1 [QSA,L]
RewriteRule ^@([a-zA-Z0-9]+)/?$     find.php?twitter=$1 [QSA,L]