Wir möchten 404 nicht gefundene Fehler in eine andere Protokolldatei trennen. Jetzt befindet sich unsere Protokolldatei (Apache), die diese Fehler schreibt, in der Datei "access.log".
Wir möchten 404 nicht gefunden Fehler zum Beispiel in notfound.log
Ich habe einen Test in apache2.conf geschrieben:
%Vor%und in VirtualHost von Apache-Sites verfügbar:
%Vor%Aber ich habe "Fehler in der Bedingung Klausel"
Ich habe versucht, eine env-Variable auch in VirtualHost zu setzen:
%Vor%Und zwar in CustomLog expr, hat aber nicht funktioniert. Jemand kann uns bitte helfen?
Danke.
Ihr Ansatz könnte funktionieren, wenn Sie das benutzerdefinierte Apache-Modul SetEnvIfPlus installieren. Dies sollte Ihnen ermöglichen, eine Umgebungsvariable mit der Direktive ResponseSetEnvIfPlus
festzulegen und dann diese Umgebungsvariable zu verwenden, um eine benutzerdefinierte Protokolldatei zu erzwingen.
Sie können sich auf Apache CustomLog Handbuch beziehen. Es sagt
Die CustomLog-Direktive wird verwendet, um Anforderungen an den Server zu protokollieren. Ein Holzklotz Format wird angegeben, und die Protokollierung kann optional vorgenommen werden abhängig von Anforderungsmerkmalen, die Umgebungsvariablen verwenden.
Das erste Argument, das den Speicherort für die Protokolle angibt Wird geschrieben, kann einen der folgenden zwei Arten von Werten annehmen:
file Ein Dateiname, relativ zum ServerRoot. Pipe Das Pipe-Zeichen "|", gefolgt vom Pfad zu einem Programm, um die Protokollinformationen zu erhalten auf seiner Standardeingabe.
Sie können also einen Programmpfad anstelle eines Protokolldateipfads angeben und können Anfragen von diesem Programm verarbeiten. Sie können mehr über Piped Logs hier
erfahren