2012-10-03 63 views
2

重定向第一個斜槓後的任何請求,我想使用的htaccess到cchecks查詢字符串,並將其發送到正確的頁面一個頁面重定向。例如http://domain.com/test/one/被重定向到http://domain.com/index.php?route=/test/one/而不改變URL結構在瀏覽器或修改它。我希望htaccess能夠在第一個斜槓後面提取任何內容並將其發送到index.php文件。如何使用htaccess的

PS我發現這個鏈接htaccess to redirect ANY request但它修改URL,並拋出一個301

回答

1

在你的文檔根htaccess的文件中添加下列規則:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^/?(.*)$ /index.php?route=/$1 [L,QSA] 

之所以對方的回答是經由301重定向是因爲R=301標誌處於方括號內的RewriteRule的。

+0

謝謝你工作得很好,但只作參考之用什麼呢標誌的意思是,我知道L表示最後是什麼意思QSA ...感謝 – jcobhams

+0

@VyrenMedia QSA又意味着「查詢字符串附加」,請參閱:HTTP:// httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule「標誌和語法」下 –