You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wiki-changes@httpd.apache.org by Apache Wiki <wi...@apache.org> on 2007/05/02 17:41:05 UTC

[Httpd Wiki] Update of "Logs/InternalDummyConnection" by slive

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Httpd Wiki" for change notification.

The following page has been changed by slive:
http://wiki.apache.org/httpd/Logs/InternalDummyConnection

New page:
=== Requests From the Server to Itself ===

When the Apache HTTP Server manages its child processes, it needs to a way to wake up processes that are listening for new connections. To do this, it sends a simple HTTP request back to itself. This request will appear in the access_log file with the remote address set to the loop-back interface (typically 127.0.0.1 or ::1 if IPv6 is configured). If you log the User-Agent string (as in the combined log format), you will see the server signature followed by "{{{(Internal Dummy Connection)}}}" on non-SSL servers. During certain periods you may see up to one such request for each {{{httpd}}} child process.

These requests are perfectly normal and you do not, in general, need to worry about them. They can simply be ignored.

If you wish to exclude them from your log, you can use normal conditional-logging techniques. For example, to omit all requests from the loopback interface from your logs, you can use

{{{
SetEnvIf Remote_Addr "127\.0\.0\.1" loopback
}}}

and then add {{{env=!loopback}}} to the end of your CustomLog directive.

In certain configurations, these requests may hit a heavy-weight dynamic web page and cause unnecessary load on the server. You can prevent the server from processing the requests using another standard configuration:

{{{
SetEnvIf User-Agent "(internal dummy connection)" dummy
<LocationMatch ^/$>
Order allow,deny
Allow from all
Deny from env=dummy
</LocationMatch>
}}}
If you have other access controls in place, be sure to properly integrate this new control. The above configuration will, by default, override any other access control on the root web page. Also note that this will only work on non-SSL servers, since SSL servers will not be able to read the User-Agent on the request. For SSL servers, use the Remote_Addr as in the logging example.