2012-10-19 45 views
0
RewriteRule ^shop _new_shopAll.php [NC] 
RewriteRule ^shop/new _new_shopNew.php [NC] 
RewriteRule ^shop/swarovski _new_shopSwar.php [NC] 
RewriteRule ^shop/signature _new_shopSig.php [NC] 
RewriteRule ^shop/wedding _new_shopWedding.php [NC] 
RewriteRule ^shop/celeb _new_shopCeleb.php [NC] 
RewriteRule ^shop/sale _new_shopSale.php [NC] 
RewriteRule ^shop/sw3 _new_shopSW3.php [NC] 

我似乎不明白为什么店只是工作和其他一切工作一样吗?需要添加$或$ 1吗?简单的.htaccess规则重写不会工作

我想这个工作

/shop?filter=Black = /_new_shopAll.php?filter=Black 
/shop/celeb?filter=Black = /_new_shopCeleb.php?filter=Black 
/shop = /_new_shopAll.php 
/shop/celeb = /_new_shopCeleb.php 

这些都是独立的链接。

回答

1

您的第一条规则RewriteRule ^shop _new_shopAll.php [NC]也将匹配shop/new,并在任何其他重写有机会触摸链接之前替换该链接。之后的所有重写规则都会看到_new_shopAll.php

你需要一个$添加到第一个统治的结束,像这样: RewriteRule ^shop/?$ _new_shopAll.php [NC] 这样,它不会匹配shop/new和其它规则将有机会与之相匹配的。