En regardant les résultats de "server-status" d'Apache, j'ai trouvé plein de lignes comme la suivante :

4-1    -    0/0/179    .     0.11    22883    0    0.0    0.00    1.35     127.0.0.1    vds305.sivit.org    GET / HTTP/1.0

En farfouilllant les logs, j'ai vu dans error.log :

[Sun Jun 17 09:33:06 2007] [error] [client 127.0.0.1] File does not exist: /htdocs

En collaboration avec mon hébergeur, nous avons trouvé d'où cela venait en faisant la manipulation suivante :

  • Création d'un répertoire htdocs à la racine du serveur
  • Création du fichier index.php dans le répertoire htdocs (le code n'est pas de moi mais d'un administrateur sivit) :
<?php
ob_start();
phpinfo();
$buff = ob_get_contents();
$fp = fopen('/tmp/trouver-htdocs.txt', a);
fwrite($fp, $buff);
fclose($fp);
ob_end_clean();
?>
  • Ensuite, en analysant le fichier trouver-htdocs.txt en regardant sur le motif "HTTP_USER_AGENT", on obtient :
Apache (internal dummy connection)

En recherchant sur le net, on trouve ainsi cette discussion qui indique que c'est tout à fait normal. Cette fonctionnalité est présente dans Apache 2.x mais n'est loggué que depuis Apache 2.2.x.

Deux solutions vues pour supprimer ces connexions :

  • Passer de mpm-prefork à mpm-worker. Toutefois, cela n'est pas possible si on utilise PHP (est-ce le seul ?) à ma connaissance pour des questions de "thread safe" ou pas.
  • Passer le MaxSpareServers à 21, un utilisateur a remarqué que les connexions s'arrêtaient à partir de ce seuil. Personnellement, je ne peux pas le faire sous peine de voir mon serveur partir en carafe :-P