题
多亏了 StackOverFlow,我以为我之前已经回答了这个问题,但我匆忙接受了答案,结果发现这并不是我问题的真正原因。
我检查了我的 Apache 访问日志:
这是我在 Google Chrome 浏览器上浏览我的网络应用程序。
127.0.0.1 - - [06/Jan/2010:22:17:35 +0000] "GET /webs/end/new.php HTTP/1.1" 200 2146
127.0.0.1 - - [06/Jan/2010:22:17:36 +0000] "GET /webs/end/settings.php HTTP/1.1" 200 4548
127.0.0.1 - - [06/Jan/2010:22:17:38 +0000] "GET /webs/end/index.php HTTP/1.1" 200 2042
这是我在 IE7 上浏览我的网络应用程序。
127.0.0.1 - - [06/Jan/2010:22:21:49 +0000] "GET /webs/end/settings.php HTTP/1.1" 200 4548
127.0.0.1 - - [06/Jan/2010:22:21:50 +0000] "GET /webs/end/index.php HTTP/1.1" 200 2042
这是我在 Firefox 上浏览我的网络应用程序。
127.0.0.1 - - [06/Jan/2010:22:18:08 +0000] "GET /webs/end/settings.php HTTP/1.1" 200 4548
127.0.0.1 - - [06/Jan/2010:22:18:09 +0000] "GET /webs/end/settings.php HTTP/1.1" 200 4548
127.0.0.1 - - [06/Jan/2010:22:18:10 +0000] "GET /webs/end/index.php HTTP/1.1" 200 2042
127.0.0.1 - - [06/Jan/2010:22:18:10 +0000] "GET /webs/end/index.php HTTP/1.1" 200 2042
127.0.0.1 - - [06/Jan/2010:22:18:11 +0000] "GET /webs/end/new.php HTTP/1.1" 200 2146
127.0.0.1 - - [06/Jan/2010:22:18:12 +0000] "GET /webs/end/new.php HTTP/1.1" 200 2146
这只是我点击一下。但 注意 对于每个页面请求,firefox 似乎都会加载页面两次,并且它会影响我的 PHP 脚本,因为它们执行两次并向我的数据库中插入两次!
为什么会这样呢?我使用的是火狐浏览器 3.5.6。我猜这是 Firefox 问题而不是 PHP/Apache 问题?
解决方案
插件你有安装在Firefox什么,他们可能会被悄悄提出请求,尤其是萤火虫。尝试关闭萤火断&看看它是否仍然发生。
由于在下面的评论中提到,萤火的最新版本不应该这样做,所以如果没有,请尝试停用所有的插件(或在安全模式下运行Firefox),看看它仍然发生
其他提示
检查出在第二请求的Accept报头。它看起来是一个图像的请求?如果是这样,你可能在一个“IMG”标签或者这是造成第二次请求的CSS属性空“URL”定义一个空的“src”属性。
这里更多信息: http://icanhascode.com / 2008/06 /的-奥秘的最多的请求/
在一般情况下,这个问题是一种痛苦追查。
我有同样的问题另一天。 将溶液放在
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
上的代码更高。有一些CSS代码之前它加载。
这是我的一个字符集声明的问题太 - !把它拿出所有的meta标签的和其他地方宣布它
正如 Michael Morton 所提到的,缺少 SRC 的 IMG 标签可能会出现问题。A 标记上也可能为空 HREF 属性。我使用 jQuery 来快速识别它们:
简而言之,在 Firebug 中运行:
$('img[src=""],a[href=""]')
这行是一些Dreamweaver的驱动HTML并导致浏览器加载两次(DOC型除去和萤火虫禁用):
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
这些都不为我工作。忧多小时......这里是是我的问题:
我与它里面的按钮的HTML链接。我发现这是问题,因为当我测试的IE浏览器,按钮没有工作(按钮在Firefox仍然工作)。
WRONG:
<a href=''><button class='btn'>Test</button></a>
RIGHT:
<a class='btn' href=''>Test</a>
现在,没有WORKS更双击。
在我来说,我不得不重复的代码是这样的:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!-- more code -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
这是我的Blogger模板移除后,火狐停止重新加载页面。
我使用Mozilla Firefox 46.0.1和我有同样的问题。但我注意到,当我的PHP脚本已经警告错误仅仅发生。
在我的PHP脚本设置error_reporting(0);
停止脚本的执行两倍。试图当然所有上述建议,后