2009-07-27 400 views
0

在我的.htaccess文件中,我定義了以下規則。htaccess規則衝突?

RewriteRule t/([^.]+)/$ /video/tag.php?tag=$1 [QSA] 

此規則適用於標籤頁。當我訪問URL爲http://example.com/video/t/funny/時,它顯示所有標籤有趣的結果。

但是,當我訪問一個URL http://example.com/video/script/common/video.php然後它顯示TAG頁與搜索標籤結果標籤共同。我認爲URL和.htaccess規則之間存在一些衝突。

它採取/t/common/並在此應用htaccess規則。如何解決這個問題?

回答

2

您的重寫規則與所討論的字符串匹配。你想改變它是這樣的:

RewriteRule ^/video/t/([^.]+)/$ /video/tag.php?tag=$1 [QSA] 

基本上,什麼情況是,因爲你沒有指定規則的開始,它匹配「腳本」在您的網址到底,並採取它遠離那裏。

如果你想少特定的字符串,試試這個:

RewriteRule /t/([^.]+)/$ /video/tag.php?tag=$1 [QSA] 
+0

當我加入'重寫規則^ /視頻/噸/([^.]+)/$ /video/tag.php?標記= $ 1 [QSA]`在文件夾`視頻`.htaccess文件`rul然後它給了我404頁面找不到錯誤? – Prashant 2009-07-27 08:54:39