2013-04-29 43 views
0

它是否有可能有一個模式,它代表任何路徑序列替代我的index.php與一個參數保存給定的路徑?htaccess重寫規則(任意路徑到index.php)

我有這樣的規則 RewriteRule ^([^/.]+)$ /index.php?page=$1 [L]

有了它,可以多一個「目錄」致以網址:www.example.com/Home例如。它重定向到index.php,get變量顯示我「Home」。

現在我想改善這一點,所以有可能做一些類似www.example.com/path/to/somewhere的重定向到我的index.php和變量顯示「路徑/到/某處」。它應該允許使用任意數量的斜線和「目錄」條目。 但是!所有得到文件結尾的網址,即www.example.com/path/to/file.pdf都不應受此重寫規則的影響。

我該如何存檔?

回答

0

嘗試以下一個

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^(.*)$ index.php?path=$1 [NC,L] 

而在index.php文件,訪問路徑如下

<?php 
echo $_GET['path']; 
?> 
+0

頁面變量總是顯示我的index.php,而不是更多。甚至* .jpg和其他網址都將被重定向到index.php。 – pyran1208 2013-04-29 10:46:40

+0

更新了我的答案,請再次檢查您的結尾 – Amit 2013-04-29 10:53:51

+0

坦克。現在變量總是空的,文件仍然被重定向。 – pyran1208 2013-04-29 11:19:29