2016-01-08 43 views

回答

3

從重寫模式

RewriteEngine On 
RewriteBase/
RewriteRule ^(.*)/(.*)/(.*)$ index.php?pageLevel1=$1&pageLevel2=$2&pageLevel3=$3 [L,R=301] 
1

首先刪除開頭的斜槓,我不知道你爲什麼要使用301重定向呢​​?如果你想接受在URL中的所有字符,你只需要有一個包羅萬象的重寫規則是這樣的:

RewriteRule ^(.*)$ index.php?param=$1 [L] 

如果你想趕上參數,如您定義,重寫規則可以是這樣的:

RewriteRule ^([A-Za-z-]+)/([A-Za-z-]+)/([A-Za-z-]+)$ index.php?pageLevel1=$1&pageLevel2=$2&pageLevel3=$3 [L] 

UPDATE:

在你的情況下完成的規則​​(三級的水平),與接受字母和數字可以像URL蛞蝓:

RewriteRule ^([A-Za-z0-9-]+)$ index.php?pageLevel1=$1&pageLevel2=$2 [L] 
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)$ index.php?pageLevel1=$1&pageLevel2=$2 [L] 
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)$ index.php?pageLevel1=$1&pageLevel2=$2&pageLevel3=$3 [L] 

這樣你就可以訪問諸如網頁:

www.domain.com/test 
www.domain.com/test/another-test 
www.domain.com/test/another-test/new-level 
相關問題