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


当前回答

这是一个重定向解决方案,包含了我想要的一切,但我找不到一个干净的片段来剪切和粘贴。

这段代码有很多优点:

允许您捕获并保留用户在其URL上的任何查询字符串参数使链接唯一,以避免不必要的缓存允许您通知用户新旧站点名称显示可设置的倒计时可以作为保留参数用于深度链接重定向

如何使用:

如果您迁移了整个站点,则在旧服务器上停止原始站点,并在根文件夹中创建另一个将此文件作为默认index.html文件的站点。编辑站点设置,以便将任何404错误重定向到此index.html页面。这将捕获任何通过链接访问旧站点的人,链接到子级页面等。

现在转到打开的脚本标记,编辑oldsite和newSite网址,并根据需要更改秒值。

保存并启动您的网站。工作完成了——该喝杯咖啡了。

<!DOCTYPE html><html><head><META HTTP-EQUIV=“cachecontrol”CONTENT=“NO-CACHE”><META HTTP-EQUIV=“PRAGMA”CONTENT=“NO-CACHE”><META HTTP-EQUIV=“到期”内容=“2002年7月22日星期一11:12:01 GMT”><style>正文{margin:200px;font:12pt helvetica;}</style></head><body></body><script type=“text/javascript”>//编辑这些以满足您的需求。var oldsite='http://theoldsitename.com'var newSite=“https://thenewsitename.com";var秒=20;//倒计时延迟。var路径=位置.pathname;var srch=位置搜索;var uniq=数学地板((Math.random()*10000)+1);var newPath=新站点+路径+(srch==“”?“?”+uniq:srch+“&”+uniq);document.write(作为主机改进的一部分,系统已从'+oldsite+'迁移到</p>');document.write('<p><a href=“'+newPath+'”>'+newSite+'</a></p>');document.write(“<p>请注意新的网站地址。</p>”);document.write(“<p>如果未自动重定向,请单击上面的链接继续。</p>”);document.write('<p id=“dvCountDown”>您将在<span id=“lblCount”></span>秒后被重定向。</p>');函数DelayRedirect(){var dvCountDown=document.getElementById(“dvCountDown”);var lblCount=document.getElementById(“lblCount”);dvCountDown.style.display=“块”;lblCount.innerHTML=秒;setInterval(函数(){秒--;lblCount.innerHTML=秒;如果(秒==0){dvCountDown.style.display=“无”;window.location=newPath;}}, 1000);}延迟重定向()</script></html>

其他回答

位于头部内部的以下元标记将告诉浏览器重定向:

<meta http-equiv="Refresh" content="seconds; url=URL"> 

将秒替换为重定向前等待的秒数,并将URL替换为要重定向到的URL。

或者,您可以使用JavaScript重定向。将其放置在页面上的任意位置的脚本标记中:

window.location = "URL"

您可以使用META“重定向”:

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

或JavaScript重定向(请注意,并非所有用户都启用了JavaScript,因此始终为他们准备备份解决方案)

<script language="javascript">
  window.location = "http://new.example.com/address";
</script>

但如果您有选择,我建议您使用mod_rewrite。

这不需要任何JavaScript代码。将其写入HTML页面的<head>部分:

<meta http-equiv="refresh" content="0; url=example.com" />

页面在0秒加载后,即可转到页面。

尝试使用:

<meta http-equiv="refresh" content="0; url=http://example.com/" />

注意:将其放在<head>部分。

此外,对于较旧的浏览器,如果您添加了一个快速链接,以防无法正确刷新:

<p><a href=“http://example.com/“>重定向</a></p>

将显示为

重新使用

这仍然允许您通过额外的点击到达您要去的地方。

我将同时使用元代码和JavaScript代码,并将有一个链接以防万一。

<!DOCTYPE HTML>
<html lang="en-US">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="refresh" content="0; url=http://example.com">
        <script type="text/javascript">
            window.location.href = "http://example.com"
        </script>
        <title>Page Redirection</title>
    </head>
    <body>
        <!-- Note: don't tell people to `click` the link, just tell them that it is a link. -->
        If you are not redirected automatically, follow this <a href='http://example.com'>link to example</a>.
    </body>
</html>

为了完整起见,如果可能的话,我认为最好的方法是使用服务器重定向,所以发送301状态代码。这可以通过使用Apache的.htaccess文件或使用WordPress的众多插件轻松实现。我确信所有主要的内容管理系统都有插件。此外,如果您的服务器上安装了301重定向,cPanel可以非常轻松地配置301重定向。