重写子文件夹的规则

时间:2010-04-14 00:04:58

标签: .htaccess mod-rewrite

这似乎是一个愚蠢的问题,但我无法弄明白。

假设我有一个包含各种文件夹的public_html文件夹:信天翁,黑鸟,乌鸦和常见问题解答。

我想这样做,以便任何到Albatross / faqs.php,Blackbirds / faqs.php,Crows / faqs.php等的流量都会看到faqs / faqs.php的文件?bird = albatross或faqs / faqs.php?bird =乌鸦或你有什么。

如果我进入Albatross文件夹的.htaccess文件,我可以这样做

RewriteRule faqs.php$ /faqs/faqs.php?cat=albatross[QSA]

哪种方法很好,但是我想把一些东西放在顶层.htacces适用于所有这些,所以尝试过:

RewriteRule faqs.php$ /faqs/faqs.php?cat=albatross[QSA]

RewriteRule /(.*)/faqs.php$ /faqs/faqs.php?cat=$1  [QSA] 

甚至

RewriteRule /albatross/faqs.php$ /faqs/faqs.php?cat=albatross  [QSA] 

以及其他各种但似乎没有任何效果,当我转到http://www.birdsandwhatnot.com/albatross/faqs.php时,我看到同样的文件一直都是这样。子文件夹中是否存在.htaccess文件与较高的.htaccess文件冲突?

我错过了什么吗?

1 个答案:

答案 0 :(得分:2)

小修正应该可以做到这一点

RewriteEngine on

RewriteRule ^(.*)/faqs.php$ /faqs/faqs.php?cat=$1  [QSA] 

“/”未传递给解析器。

希望有所帮助