2013-02-08 39 views
0

我知道有很多這樣的問題,但我真的不能找到一個我可以轉化爲我所需要的:ModRewrite尼斯URL

我試圖改寫

www.domain.com/subfolder/index.php?p=test.php&condition=true&another=false 

www.domain.com/subfolder/p/test/condition/true/another/false 

在PHP GET變量麪包車是整數,字符串或布爾值。 p變量是特殊的,並且將永遠在那裏。

我已經試過

RewriteEngine On 
RewriteRule ^([^/]*)$ /subfolder/index.php?p=$1 [L] 

爲解決部分問題,但我不能讓它工作(我只是得到404)

我是一個國防部重寫小白,所以任何幫助將不勝感激。

回答

0

這與正則表達式有更多關係。如果內存提供服務,則需要如下內容:

RewriteRule ^/subfolder/(.*)/(.*)/$ /subfolder/index.php?p=$1&condition=$2 [L] 

每個編號的參數必須對應於重寫的第一部分的某個部分。也就是說,$ 1對應於第一個(。*)

我沒有時間去測試這個,但這個想法或多或少是正確的。

+0

謝謝,我已經試過了,它不能工作。我不確定是否這是因爲它被重寫爲本質上是服務器查找的文件名test.php,而不是傳遞給index.php。我確定ModRewrite在這臺服務器上工作,因爲我在同一臺服務器上安裝了一個WordPress,可以正常工作。 – AngusP 2013-02-09 11:29:57