2013-08-21 71 views
0

我有兩個不同的PHP頁面page.php和team.php。我writtent改寫page.php文件的規則是遵循衝突在.htaccess URL寫作

RewriteRule ^([^/]+)/([0-9]+)\/?$ /page.php?name=$1&id=$2 

它將鏈接example.com/privacy_policy/30重定向到example.com/page.php?name=privacy_policy&id=30

現在我想寫team.php的規則,使鏈接example.com/team/Zeeshan_Lalani/3會重定向到example.com/team.php?name=Zeeshan_Lalani&id=3

我試圖完成上述網址

RewriteRule ^team/([^/]+)/([0-9]+)\/?$ /team.php?name=$1&id=$2 

的規則但有了這個規則,它與page.php規則衝突,並呈現404 not found錯誤,當我評論page.php規則時,它工作正常。

請建議我在這裏做錯了什麼?

回答

2

您可以嘗試使用[L]標誌。國旗說,如果聲明是正確的,沒有其他聲明將被匹配。例如:

RewriteRule ^team/([^/]+)/([0-9]+)\/?$ /team.php?name=$1&id=$2 [L] 
RewriteRule ^([^/]+)/([0-9]+)\/?$ /page.php?name=$1&id=$2 [L] 

請一定要有上面的另外一個「團隊」的規則,否則可應用於團隊規則之前,第二條規則可能匹配。

+0

真棒,它的作品,天才! – zzlalani