Wie unterscheidet man virtuelle Hosts in den Protokolldateien von Apache?

Wie unterscheidet man virtuelle Hosts in den Protokolldateien von Apache?

Ich wollte eine einfache Zugriffsstatistik basierend auf dem Zugriffsprotokoll von Apache erstellen, habe aber festgestellt, dass ich die virtuellen Hosts in der Protokolldatei nicht auseinanderhalten kann. Ich möchte nicht wirklich für jeden virtuellen Host separate Protokolldateien erstellen. Was kann ich also tun? Gibt es eine Möglichkeit, die Einträge der Protokolldatei benutzerdefiniert zu formatieren? Ich würde diese Änderung auch lieber global vornehmen, ohne jeden Eintrag des virtuellen Hosts aktualisieren zu müssen.

Beispielsweise erhalte ich Zeilen wie diese (es ist ein Bing-Bot):

65.55.52.92 - - [07/Dec/2013:16:04:02 +0100] "GET /robots.txt HTTP/1.1" 200 59

und ich kann nicht sagen, auf die robots.txt-Datei welcher Website es zugreifen wollte.

Antwort1

Sie können einen benutzerdefiniertenProtokollformatRichtlinie zusammen mit einerBenutzerdefiniertes Protokoll-Anweisung, um die Protokollmeldungen so zu formatieren, wie es Ihren Anforderungen entspricht. Die Dokumentation fürmod_log_configist wirklich gut geschrieben und leicht verständlich.

Sie möchten wahrscheinlich %vIhrer LogFormat-Direktive ein

%v Der kanonische Servername des Servers, der die Anforderung bedient.

verwandte Informationen