2012-10-26 110 views
0

我需要在無需每次寫出它的情況下持續地持續這個問題。 有沒有辦法做到這一點?重複發生的htaccess命令

RewriteRule ^(\w+)/?$ index.php?page=$1 [QSA] 
RewriteRule ^(\w+)/(\w+)/?$ index.php?page=$1&$1=$2 [QSA,L] 
RewriteRule ^(\w+)/(\w+)/(\w+)/?$ index.php?page=$1&$1=$2&$2=$3 [QSA,L] 

所以一路過關斬將然後$ 2 $ 1 = $ 2 = $ 3,以便頁=博客&博客=文章&文章=日期&日期= 2012

然後我PHP藉此並在此運行分析。所以可以像$ 1 - > $ 11我知道的長URL指的是我仍然可以啓用添加。

AAA.com/blog/article/date/2012/?colour=blue 

回答

0

不一樣。要取代$5佔位符,您確實需要一個匹配組。當然

人們可以optionalize其分組方式:

RewriteRule ^(\w+)(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?/?$ index.php?page=$1&$1=$2&$2=$3&$3=$4&$4=$5&$5=$6 [QSA,L] 

但你有幾個&=&=&=尾隨缺席條目。通常它應該導致一個空的$_GET[""],但PHP甚至忽略了這一點。所以,可能是一個選擇。雖然我覺得它不是一個更可讀或簡潔的RewriteRule。

+0

我會離開它,因爲它現在。我理解它就像那個atm。不管怎麼說,還是要謝謝你。 –