将具有参数的所有URL重定向到具有相同参数的特定页面

时间:2012-12-01 19:26:42

标签: apache .htaccess

我正在尝试将所有带参数的网址重定向到具有相同参数的其他网址。

例如:www.mysite.com/?q =关于我需要访问www.mysite.com/index.php?q=about

我不关心参数,但我需要所有参数都是index.php加上相同类型的参数。

如果我没错,我应该使用RewriteRule,但我不知道我该怎么办。

我正在尝试这样的事情,但它不起作用:

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

有什么想法吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

更新:

尝试这样的事情:

RewriteEngine on
RewriteCond %{QUERY_STRING} ^/(.*)/?$ 
RewriteRule ^(.*)$  /index.php%1 [L]

To account for trailing slash, in index.php test the query like this:

<?php
if ( ($_GET['q'] == 'about') || ($_GET['q'] == 'about/') ){
//do stuff; 
}
?>

当然q=about可以替换为您想要的任何内容。即search=apples