如何使用htaccess重定向多参数url

时间:2016-02-28 11:44:13

标签: php apache .htaccess redirect mod-rewrite

我的旧网址是

http://www.tuitionok.com/result.php?sr=0&city=patna&text=computer+home+tuition+in+patna&type=home-tuition#t

和新网址

http://www.tuitionok.com/patna/home-tuition/computer-home-tuition-in-patna/0

我正在尝试将旧网址转发给新的

我正在使用此.htaccess代码

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)$ result.php?city=$1&type=$2&text=$3&sr=$4 [L]

我成功获取参数值并显示结果。但实际问题是旧网址和新网址都有效。我认为我的htaccess文件应该被修改为将url强制重定向到新的URL。

1 个答案:

答案 0 :(得分:2)

试试这个:

Options +FollowSymLinks -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)$ result.php?city=$1&type=$2&text=$3&sr=$4 [L]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)/$ result.php?city=$1&type=$2&text=$3&sr=$4 [L]