2013-10-14 24 views
0

我有以下重寫規則htaccess的 - 替代路徑,如果查詢字符串匹配某個單詞

RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$ articles.php?t=$1&p=$2 [NC,L] 
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/([0-9-]+)/?$ articles.php?t=$1&p=$2&id=$3 [NC,L] 

我的問題是如果pcommunity我希望它重定向到community.php和保存查詢字符串。

這樣的網址將成爲community.php?t=$1&p=$2&id=$3community.php?t=$1&p=$2

感謝

+0

如果您要訪問的查詢字符串,你必須使用RewriteCond。 – CBroe

+0

我知道我可以做'RewriteCond%{QUERY_STRING}&p = community [NC]',但我不知道如何繼續。 –

+1

該參數是原始查詢字符串的一部分嗎?如果它只是您在RewriteRules中匹配的模式的第二部分,那麼您事先制定一個特殊的規則來測試該固定文字而不是模式。 – CBroe

回答

0

您可以將現有的規則之前這樣2個額外的規則:

RewriteCond %{REQUEST_URI} ^/[a-z0-9-]+/community/ [NC] 
RewriteRule ^([a-z0-9-]+)/([a-z0-9-]+)/?$ community.php?t=$1&p=$2 [L,QSA,NC] 

RewriteCond %{REQUEST_URI} ^/[a-z0-9-]+/community/ [NC] 
RewriteRule ^([a-z0-9-]+)/([a-z0-9-]+)/([0-9-]+)/?$ community.php?t=$1&p=$2&id=$3 [L,QSA,NC] 
+0

嗨,感謝您的回覆,但它仍然重定向到article.php –

+0

如果你有這些規則在正確的順序,那麼它不應該發生。請在您的問題中發佈完整的.htaccess,以便我可以進行調查並提出建議。 – anubhava

相關問題