我想将访问者重定向到主网址,如果他们通过这样的网址http://domain.com?abc_3828832
。
我希望来自该网址的访问者重定向到http://mydomain.com
答案 0 :(得分:1)
您可以尝试(使用JavaScript):
if (window.location.toString().indexOf('?') > -1) {
window.location = 'http://mydomain.com';
}
您也可以尝试:
if (window.location.search) {
window.location = 'http://mydomain.com';
}
答案 1 :(得分:1)
答案 2 :(得分:0)
与David相同,但支持任何协议,并将返回当前主机。这稍微可以重复使用。 Nicholas Zakas建议直接使用location
对象而不是窗口,因为它可以直接访问属性。
if (location.search) {
location.href = location.protocol + '//' + location.hostname;
}
答案 3 :(得分:0)
这是一个简单的JavaScript解决方案,它只删除查询字符串并重定向用户:
if (window.location.search) {
window.location = window.location.split("?")[0];
}
但是,使用此解决方案,用户将加载页面,JavaScript将运行,然后页面将再次加载,这可能会惹恼用户并导致不必要的HTTP请求。
就个人而言,我会使用服务器配置设置,例如Apache的RewriteEngine:
RewriteEngine On # Turn on the rewriting engine
RewriteRule ^/?\?.*$ / [R=301,L] # (Not tested, but should work)
最后,如果您无法访问服务器的配置(甚至是.htaccess),那么您也可以使用像PHP这样的服务器端脚本语言:
<?php
if (strlen($_SERVER['QUERY_STRING']) > 0) {
header("Location: /");
}
?>