2013-03-02 48 views
0

我試圖在我的HTACCESS文件中設置mod_write來重寫我的一個URL。我使用$ _GET將標記名稱和可選頁碼(用於分頁)傳遞給名爲tags.php的文件。如何使用mod_rewrite忽略第二個變量如果爲空

下面是與varialbles文件名:tags.php T = textname & S =#

(在上面的網址,#是頁碼。)

我試圖使用? mod_rewrite將網址寫爲domain.com/tags/textname/#/,但我也想允許domain.com/tags/textname/如果用戶登錄第一頁(無需分頁變量需要通過)。

這裏是我的mod_rewrite代碼:

RewriteCond %{REQUEST_URI} !tags\.php [NC] 
RewriteRule ^tags/(.*)/$ /tags.php?t=$1 [NC,L] 
RewriteRule ^tags/(.*)/(.*)/$ /tags.php?t=$1&s=$2 [QSA,NC,L] 

的代碼工作完全當我訪問domain.com/tags/textname/。當我嘗試訪問domain.com/tags/textname/1/時,因爲不是mod_rewrite,而是通過tags.php?t = textname & s = 1,它通過tags.php?t = textname/1 & s =

任何人看到我做錯了我的第一個或第二個重寫,以防止第二個規則工作?

謝謝!

回答

0

想通了。通過首先放置更具描述性的陳述來改寫RewriteRules。更新任何有此問題的人。

RewriteCond %{REQUEST_URI} !tags\.php [NC] 
RewriteRule ^tags/(.*)/(.*)/$ /tags.php?t=$1&s=$2 [QSA,NC,L] 
RewriteRule ^tags/(.*)/$ /tags.php?t=$1 [NC,L] 
相關問題