.htaccess – 重写子文件夹的规则

这似乎是一个愚蠢的问题,但我无法弄清楚.

假设我有一个包含各种文件夹的public_html文件夹:Albatross,Blackbirds,Crows和Faqs.

我想这样做,以便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文件冲突?

我错过了什么吗?

最佳答案 一个小的修正应该可以解决问题

RewriteEngine on

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

“/”未传递给解析器.

希望能帮助到你

点赞