Php Firefox是否同步同一页面的请求?

Php Firefox是否同步同一页面的请求?,php,internet-explorer,firefox,synchronized,Php,Internet Explorer,Firefox,Synchronized,我正在使用Firefox 3.6.6 我有一个名为index.PHP的PHP脚本,其中包含以下代码: <?php sleep(20); die(time()); ?> 我打开两个浏览器选项卡,将URL复制到每个选项卡中,然后在每个选项卡中快速按enter键。第一个选项卡只需20多秒即可完成。第二个选项卡只需40多秒即可完成 我在IE中做了同样的实验,两个脚本在一秒钟内完成,大约20秒 这是预期的行为吗?导致我测试这个的实际脚本是一个同步过程。我希望任何试图执行两次的人都会收到一

我正在使用Firefox 3.6.6

我有一个名为
index.PHP
的PHP脚本,其中包含以下代码:

<?php
sleep(20); die(time());
?>

我打开两个浏览器选项卡,将URL复制到每个选项卡中,然后在每个选项卡中快速按enter键。第一个选项卡只需20多秒即可完成。第二个选项卡只需40多秒即可完成

我在IE中做了同样的实验,两个脚本在一秒钟内完成,大约20秒

这是预期的行为吗?导致我测试这个的实际脚本是一个同步过程。我希望任何试图执行两次的人都会收到一个错误,即进程已经在进行中,而不是让浏览器坐在那里等待,直到它可以再次执行它

如果Firefox就是这样工作的,那么它如何确定页面何时是重复页面,以及是否应该将请求排队,而不是同时运行它们


我可以通过在末尾放一个垃圾GET字符串来愚弄它,例如
index.php
index.php?junk=1
都在20秒左右完成。

这是缓存机制:如果禁用所有缓存,问题就不会发生。显然,FF开发人员有一个检查,当一个请求仍在加载时,它可能是可缓存的,因此它等待第一个请求,然后才决定不使用缓存,然后才分派第二个请求(您可以在日志文件的时间戳中检查)


您可以尝试使用一些无缓存标头&向客户端刷新()数据,也许它可以确定在接收标头时缓存不是一个选项,尽管我怀疑缓存检查仅在加载内容后才进行。

IE的行为似乎有问题(或者至少不理想)。当你没有理由认为必须检索同一事物时,为什么要检索两次?