我想将index.php?action = this& id = 1重定向到index.php?action = this& id = 2
我在.htaccess中尝试了下面的代码,但它没有帮助
redirect 301 index.php?action=this&id=1 http://mysite.com/index.php?action=this&id=2
我在这里做错了什么?什么可能是一种解决方法?
答案 0 :(得分:2)
您可以尝试在要重定向的页面上添加此内容
<meta HTTP-EQUIV="REFRESH" content="0; url=index?action=this&id=2">
答案 1 :(得分:2)
为了匹配特定的查询字符串,拥有以使用 mod_rewrite 。请检查您的主机上是否已安装/允许它。在这种情况下的规则将是这样的:
# most likely be required for rewrite rules to function properly
Options +FollowSymLinks +SymLinksIfOwnerMatch
# Activate Rewrite Engine
RewriteEngine On
RewriteBase /
# actual rule
RewriteCond %{QUERY_STRING} ^action=this&id=1 [NC]
RewriteRule ^index\.php$ /index.php?action=this&id=2 [R=301,L]
这需要放在网站根文件夹中的.htaccess中。如果放在其他任何地方,可能需要进行一些小改动。
此规则只会将/index.php?action=this&id=1
重定向到/index.php?action=this&id=2
而不会重定向到其他网址(就像您在问题中提到的那样)。
答案 2 :(得分:1)
只需在第一个网址之前添加正斜杠
Redirect 301 /index.php?action=this&id=1 http://mysite.com/index.php?action=this&id=2