如何在第一个域名(网页)加载时将域名重定向到另一个域名?
以下是一种纯HTML的替代方法,在您的HTML <head>
中使用以下<meta>
标记:
<meta charset="UTF-8">
<meta http-equiv="refresh" content="0;http://anotherdomain.com">
这里的0
是页面在重定向之前等待的秒数。在这种情况下,页面一旦加载就会立即重定向。与建议使用JavaScript解决方案相反,即使在禁用JS的浏览器中,此方法也能正常工作。
然而,如果您可以轻松地挂接服务器端代码(即响应尚未提交等),那么我仍然更喜欢上述HTML/JS解决方案。
有几种方法可以实现这个功能。其中一种是向body标签添加一个onload事件,将window.location设置为新域名。
<script language=javascript>
function redirect(){
window.location = "http://example.com";
}
</script>
<body onload="redirect()">
</body>
如果您无法通过HTML方式(meta refresh)实现它,例如如果您想添加条件检查,则可以使用JavaScript作为最后的手段来通过设置URL的主机名(而不是主机)部分来重定向到不同的域,例如:
<script>
window.location.hostname = 'new-domain-example.com'
</script>
这将把您重定向到具有替换域的相同URL(包括协议、端口、查询字符串、哈希)。 请注意,此脚本可以与元标记一起放置在HTML头中(https://developers.google.com/search/docs/crawling-indexing/301-redirects#jslocation)。
以下是一个很好的可视化示例,以了解位置对象上的所有属性:https://developer.mozilla.org/zh-CN/docs/Web/API/Location#location_anatomy