是否可以设置一个基本的HTML页面以在加载时重定向到另一个页面?


当前回答

将以下代码放入<head>部分:

<meta http-equiv="refresh" content="0; url=http://address/">

其他回答

最好设置301重定向。请参阅谷歌网站管理员工具文章301重定向。

我使用一个脚本将用户从index.html重定向到登录页面的相对url

<html>
  <head>
    <title>index.html</title>
  </head>
  <body onload="document.getElementById('lnkhome').click();">
    <a href="/Pages/Login.aspx" id="lnkhome">Go to Login Page</a>
  </body>
</html>

这是前面所有答案的总结,加上通过.htaccess使用HTTP Refresh Header的附加解决方案

HTTP刷新标头首先,您可以使用.htaccess设置这样的刷新标头标题集刷新“3”这相当于在PHP中使用header()函数标头(“刷新:3;”);请注意,并非每个浏览器都支持此解决方案。JavaScript使用备用URL:<脚本>setTimeout(function){location.href=“http://example.com/alternate_url.html"} , 3000);</script>没有备用URL:<脚本>setTimeout(“location.reload(true);”,timeoutPeriod);</script>使用窗口对象:<脚本>window.location.reload(true);</script>刷新标识当不需要依赖JavaScript和重定向头时,可以使用元刷新使用备用URL:<meta http equiv=“刷新”content=“3;url=http://example.com/alternate_url.html">没有备用URL:<meta http equiv=“刷新”content=“3”>使用<noscript>:<noscript><meta http equiv=“refresh”content=“3”/></noscript>

可选

根据Billy Moon的建议,如果出现问题,您可以提供刷新链接:

如果未自动重定向:<a href='http://example.com/alternat_url.html'>单击此处</a>

资源

维基百科元刷新META REFRESH的性能影响使用jQuery刷新(重新加载)一次页面?

据我所知,迄今为止,我所看到的所有解决这个问题的方法似乎都在历史中添加了老位置。要重定向页面,但在历史记录中没有旧位置,我使用替换方法:

<script>
    window.location.replace("http://example.com");
</script>

我在使用jQuery Mobile应用程序时发现了一个问题,在某些情况下,我的Meta头标记无法正确实现重定向(jQuery Mobile不会自动读取每个页面的头,因此在那里放置JavaScript也无效,除非将其包装得更复杂)。我发现在这种情况下最简单的解决方案是将JavaScript重定向直接放入文档正文,如下所示:

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta http-equiv="refresh" content="0;url=myURL" />
    </head>

    <body>
        <p>You are not logged in!</p>
        <script language="javascript">
            window.location = "myURL";
        </script>
    </body>
</html>

这似乎在所有情况下对我都有效。