2012-05-19 16 views
1

我想要的網址,如改寫:mysite.com/Section/Subsection/SubSubSection到 mysite.com/index.php?s=Section & SUB1 =款& SUB2 = SubSubSection如何重寫URL,將路徑拆分爲單獨的查詢字符串參數?

我寫這條規則:

RewriteRule ^([^/]*)/([^/]*)/([^/]*)/?$ /index.php?s=$1&sub1=$2&sub2=$3 

但問題是,條,款和SubSubSection不是強制性的,而是如果我插入一些「?」性格如此下去內部服務器錯誤...

(我試過這樣:

RewriteRule ^([^/]*)(/([^/]*))?(/([^/]*))?/?$ /index.php?s=$1&sub1=$3&sub2=$5 

,但它不工作)

另一個問題是,有一些不應該被編輯其他網址如/res/img/logo.png。

該網站是動態的,所以我不知道節名稱事先。當然,我知道應排除的網址。

任何解決方案?提前致謝。

+1

是沒可能只是處理REQUEST_URI在PHP中呢?似乎它會更容易,我認爲CMS就像Wordpress,Drupal和Joomla。我認爲一旦一切都被重定向,Zend處理php中的url index.php – Gohn67

+0

但是,如果我重定向到index.php,當我嘗試在php中處理它時,request_uri總是'index.php',或者不是? –

+0

就是這樣,request_uri不會更改爲index.php,只要您不在重寫規則中執行重定向。以一個Wordpress .htaccess文件爲例。 – Gohn67

回答

0

我認爲你應該做這樣的事情......

RewriteRule ^/([a-zA-Z]*)/([a-zA-Z]*)/([a-zA-Z]*)/?$ /index.php?s=$1&sub1=$2&sub2=$3 

問候,

Mimiz

相關問題