Question

I thought I had answered this question before thanks to StackOverFlow, but I hastily took an answer and it turns out not to be the real cause to my problem.

I have checked my Apache Access Log:

This is me browsing my web app on Google Chrome Browser.

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

This is me browsing my web app on 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

This is me browsing my web app on 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

This is just me clicking around. But notice that for every page request firefox seems to be loading the page twice and its effecting my PHP scripts as they are executing twice and making two insertions into my DB!

Why is the case? I am using Firefox 3.5.6. I am guessing this is a Firefox issue rather than a PHP/Apache one?

Was it helpful?

Solution

What plugins have you got installed in Firefox, they may be making requests silently, especially FireBug. Try turning firebug off & see if it still happens.

As mentioned in the comment below, the latest version of FireBug shouldn't be doing this, so if it isn't, try disabling all your plugins (or running FireFox in safe mode) and see if it still happens

OTHER TIPS

Check out the Accept headers on the 2nd request. Does it look to be a request for an image? If so, you may have an empty "src" attribute on an "img" tag or an empty "url" definition in a CSS property which is causing the 2nd request.

More info here: http://icanhascode.com/2008/06/the-mystery-of-the-multiple-requests/

In general, this issue is a pain to track down.

I had the same problem another day. The solution was put

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

higher on the code. There was some css codes loading before it.

This was a charset declaration issue for me too - take it out of all meta tags and declare it elsewhere!

As mentioned by Michael Morton, IMG tags with missing SRC can be a problem. Could also be empty HREF attributes on A tags. I've used jQuery to quickly identify them:

http://www.planbox.com/blog/development/coding/browser-send-same-request-twice-or-multiple-times.html

In short, run this in Firebug:

$('img[src=""],a[href=""]')

This line is some Dreamweaver driven HTML and caused the browser to load twice (with doc type removed and firebug disabled):

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

None of these worked for me. Many hours of worry...here is what was my problem:

I had a HTML link with a button inside it. I found this was the problem because when I tested it on IE, the button didn't work (Buttons still worked in Firefox).

WRONG:

<a href=''><button class='btn'>Test</button></a>

RIGHT:

<a class='btn' href=''>Test</a>

WORKS now and no more double tap.

In my case I had duplicate tags like this:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<!-- more code -->

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

After removing it from my Blogger template, Firefox stopped re-loading the page.

Am using mozilla firefox 46.0.1 and I got the same problem. But I noticed it occurred only when my php script had warning errors. Setting error_reporting(0); in my php script stopped the double execution of the script. After trying all the above suggestions, of course.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top