Why does my Web site send itself many HTTP requests?
We’ve occasionally seen problems where a Web site requests its own pages over and over again. If this happens, you may find that your Web site does not completely work, or that one component of it does not work.
You may also notice that your Web site’s access.log gets filled with lines like this:
[192.0.2.17] - - [02/Mar/2011:02:56:03 -0800] "GET /wordpress/ HTTP/1.0" 200 30288 "-" "WordPress/3.1; http://example.com/wordpress"
... where “192.0.2.17” is the actual IP address of the Web server itself, the user agent is some server software, and there is no “referrer”.
This can happen when your Web site makes a request to a Web site to retrieve some resource (for example, an RSS feed to be integrated into your page), but the “external Web site” that it connects to is its own domain name. This request arrives for itself, which causes a second copy to start, which makes another request to itself, and so on. This loop will continue until the maximum number of processes have been started.
To fix this, make sure that your site doesn't try to load a page from itself in a way that then causes that page to load yet another copy of itself.
What if I can’t even view my site to fix it, because of the problem?
You can temporarily mask the effects of this kind of infinite loop by adding a line like this to your site’s .htaccess file to make the infinite requests fail:
Deny from 192.0.2.17
This is not a proper fix for the problem (it merely masks it), and it may cause subtle new problems that interfere with the normal operation of your site. Be sure to remove this extra line when you’ve properly fixed the problem.