2012-08-09 54 views
0

我是htaccess的新手,無法弄清楚這裏發生了什麼。我試圖讓所有重定向指向PAGEID = pageName的index.php。除一個目錄以外的域的Mod重寫

因此,domain.com/manager會被推送到index.php?PAGEID = manager。

現在,我有這個工作,但我需要它只是表現正常,當它擊中目錄「測試」,但每當我轉到domain.com/test我被推到index.php?PAGEID =測試

RewriteEngine On 
RewriteCond %{REQUEST_URI} !^/test 
RewriteRule ^([\w/]*)$ index.php?PAGEID=$1 [L] 

有關如何使這項工作的任何想法?我錯過了什麼?

回答

0

我覺得這個邏輯有一些問題。因爲在這個例子'domain.com/test'中,我們寫了一個條件來替換domain.com之後的所有字符串(測試)爲'index.php?pageid = test'。

問題是'index.php'也以域名'domain.com/index.php?pageid ..'後面的字符串形式出現。這裏重寫條件也是適用的,它會重寫它。

我認爲你應該嘗試這樣的事情。 htaccess, redirect virtual subdomain to URL parameter

或者,如果「測試」是一個靜態的字符串,然後在重寫條件,我們可以指定爲僅替換字符串「測試」到「的index.php /的pageid =測試」