it-swarm.com.de

Wo werden Apache-Dateizugriffsprotokolle gespeichert?

Weiß jemand, wo Dateizugriffsprotokolle gespeichert sind, damit ich einen Befehl tail -f Ausführen kann, um zu sehen, wer auf eine bestimmte Datei zugreift.

Ich habe XAMPP, einen auf meinem Computer installierten Apache-Server, der die Zugriffe automatisch protokolliert. Es ist in meinem Installationsordner gespeichert.

187
AkshaiShah

Letztendlich hängt dies von Ihrer Apache-Konfiguration ab. Suchen Sie in Ihrer Apache-Konfiguration nach CustomLog -Anweisungen. Beispiele finden Sie im Handbuch .

Ein typischer Speicherort für alle Protokolldateien sind /var/log Und Unterverzeichnisse. Versuchen Sie /var/log/Apache/access.log Oder /var/log/Apache2/access.log Oder /var/log/httpd/access.log. Wenn die Protokolle nicht vorhanden sind, führen Sie locate access.log access_log Aus.

Wenn Sie das Protokoll mit Gilles 'Antwort nicht finden können, können Sie noch einige weitere Dinge ausprobieren.

  • Hinein sehen /var/log/httpd.
  • Lauf Sudo locate access.log ebenso gut wie Sudo locate access_log. Die Protokolle auf meinem System waren nur für root sichtbar, und die Datei hieß access_log Anstatt von access.log.
40
Don Kirkby

Der Apache-Server zeichnet alle eingehenden und alle in einer Protokolldatei verarbeiteten Anforderungen auf. Das Format des Zugriffsprotokolls ist in hohem Maße konfigurierbar. Der Speicherort und der Inhalt des Zugriffsprotokolls werden von der CustomLog-Direktive gesteuert. Standardspeicherort der Apache-Zugriffsprotokolldatei:

Speicherort der RHEL/Red Hat/CentOS/Fedora Linux Apache-Zugriffsdatei -

/var/log/httpd/access_log

Speicherort der Debian/Ubuntu Linux Apache-Zugriffsprotokolldatei -

/var/log/Apache2/access.log

Speicherort der FreeBSD Apache-Zugriffsprotokolldatei -

 /var/log/httpd-access.log

Um den genauen Speicherort der Apache-Protokolldatei zu ermitteln, können Sie den Befehl grep verwenden:

# grep CustomLog /usr/local/etc/Apache22/httpd.conf
# grep CustomLog /etc/Apache2/Apache2.conf
# grep CustomLog /etc/httpd/conf/httpd.conf

Beispielausgabe:

# a CustomLog directive (see below).
#CustomLog "/var/log/httpd-access.log" common
CustomLog "/var/log/httpd-access.log" combined 
25
hector adam

finde den Speicherort der Apache access.log-Datei unter Debian/Ubuntu Linux

Auf meiner Maschine /etc/Apache2/Apache2.conf wies auf ${Apache_LOG_DIR} Umgebungsvariable anstelle des Protokollverzeichnisses selbst.

Der folgende (zusätzliche) Schritt war erforderlich, um das tatsächliche Protokollverzeichnis zu finden:

$ grep Apache_LOG_DIR /etc/Apache2/envvars
export Apache_LOG_DIR=/var/log/Apache2$SUFFIX
$

envvars enthält Standardumgebungsvariablen für Apache.

Verwenden Sie daher zum Anzeigen des Zugriffsprotokolls

$ Sudo tail -f /var/log/Apache2/access.log
7
Dmytro Dzyubak