.htaccess使用查询字符串值将查询字符串重定向到另一个页面

时间:2017-09-01 16:04:08

标签: .htaccess redirect

我花了很多时间试图找到解决方案并尝试了许多不同的方法,但到目前为止我没有尝试过任何工作。

我想将带有查询字符串的网址重定向到包含该查询字符串值的另一个网址。

例如: - http://site.co.uk/module/filecatalogue/downloads?cid=value 将重定向到 http://site.co.uk/module/filecatalogue/downloads/value

任何帮助都会非常感激,因为我即将疯狂。

谢谢: - )

1 个答案:

答案 0 :(得分:1)

您可以在.htaccess文件中使用以下内容:

RewriteEngine On
RewriteCond %{QUERY_STRING} cid=(.+) [NC]
RewriteRule ^(.*)$ http://site.co.uk/module/filecatalogue/downloads/%1? [R=301,NC,L]

这样做会将变量cid=作为条件,如果服务器在URL中检测到它,它将向前移动到RewriteRule。

它将使用301重定向到http://site.co.uk/module/filecatalogue/downloads/anything重写它。表示变量的任何内容,使用(.+)抓取。

我们在网址末尾添加?,以阻止原始查询显示在新网址的末尾。

确保在>测试之前清除缓存