2010-11-09 70 views
1

我试图将用户重定向到一个页面,只能从一个特定的页面。最快的非服务器端重定向方法

我已经尝试了元刷新,windows.location,top.location.replace,但他们都需要一些时间来重定向,因为我的客户需要页面立即更改或尽可能接近。我想知道是否有更快速的非服务器方法来这样做。由于脚本必须放在页面中,因此php头也不是一个选项。

任何想法将不胜感激!

+0

Soo ...什么是最快的服务器端重定向,用PHP?我想要检测某人的浏览器(FF浏览器和Safari浏览器之间),并相应地重定向浏览器扩展。基本上这个页面并没有其他目的,除了根据你的浏览器路由你,并且在页面上没有html。 – 2011-08-06 04:24:41

回答

2

将您所选择的meta和javascript方法放置在靠近顶部的位置。这些都是客户端重定向方法。

如果不加速服务器或缩短页面加载时间,则无法加快速度。如果您可以通过删除内容和/或图像,外部文件等来加快页面加载速度,则可以稍微提高性能。

如果您真的想进入愚蠢的极限,如果您可以在隐藏的iframe的预先页面中预加载目标页面,则当浏览器击中本地缓存并跳过DNS时,转换看起来接近即时抬头。确保您的etags和缓存控制标头设置在服务器端。

如果您担心在重定向之前客户端看到真实页面加载的闪烁,请考虑将内容设置为隐藏于内联样式或用白色div或类似内容覆盖它。

+0

Quibble:元刷新可能与基于浏览器的基于脚本的两个命令行为不同。 – 2010-11-09 21:55:38

+0

公平点。最好包含这两种方法,尽可能多地浏览浏览器,但这样做可能会减慢页面加载时间。更新了答案。 – 2010-11-09 21:57:45

+0

谢谢你们。我想我会尝试隐藏原始页面,但重定向是在if子句中加载的,否则会显示常规页面,因此我将不得不隐藏整个页面的内容,只有在if页面中才有。 – Sherif 2010-11-09 22:07:23

0

我认为元刷新会更快。仅仅是因为它在文档顶部,而JavaScript <script>标签在解释时被阻止。

+0

确实如此,但它无法在所有浏览器中可靠地运行。如果浏览器接受元,它将在页面加载后立即开始工作。如果没有,JavaScript将在那一刻开始工作。 – 2010-11-09 22:00:58

+0

@保罗,很高兴知道。谢谢。 – 2010-11-09 23:55:28

相关问题