Di mana log akses file Apache disimpan?

180

Adakah yang tahu di mana log akses file disimpan, jadi saya bisa menjalankan tail -fperintah untuk melihat siapa yang mengakses file tertentu.

Saya memiliki XAMPP, yang merupakan server Apache yang diinstal pada mesin saya, yang secara otomatis mencatat akses. Itu disimpan di folder instalasi saya.

AkshaiShah
sumber
Pada distribusi apa, atau dengan penyedia hosting apa? Log biasanya ada di bawah /var/log, tetapi beberapa sistem memilikinya di tempat lain.
Gilles

Jawaban:

206

Pada akhirnya, ini tergantung pada konfigurasi Apache Anda. Cari CustomLogarahan dalam konfigurasi Apache Anda, lihat manual untuk contoh.

Lokasi khas untuk semua file log adalah /var/logdan subdirektori. Coba /var/log/apache/access.logatau /var/log/apache2/access.logatau /var/log/httpd/access.log. Jika log tidak ada di sana, coba jalankan locate access.log access_log.

Gilles
sumber
40

Jika Anda tidak dapat menemukan log dengan jawaban Gilles , ada beberapa hal lagi yang dapat Anda coba.

  • Lihat /var/log/httpd.
  • Jalankan sudo locate access.logjuga sudo locate access_log. Log pada sistem saya tidak terlihat kecuali untuk di-root, dan file itu dipanggil access_logbukan access.log.
Don Kirkby
sumber
3
+1 untuk / var / log / httpd - menuntun saya ke sana pada instalasi CentOS kami
Chuck Wilbur
24

Server Apache mencatat semua permintaan masuk dan semua permintaan diproses ke file log. Format log akses sangat dapat dikonfigurasi. Lokasi dan konten log akses dikendalikan oleh arahan CustomLog. Lokasi file log akses apache default:

Lokasi file akses file RHEL / Red Hat / CentOS / Fedora Linux Apache -

/var/log/httpd/access_log

Lokasi file log akses Debian / Ubuntu Linux Apache -

/var/log/apache2/access.log

Lokasi file log akses FreeBSD Apache -

 /var/log/httpd-access.log

Untuk menemukan lokasi file log apache yang tepat, Anda dapat menggunakan perintah grep:

# grep CustomLog /usr/local/etc/apache22/httpd.conf
# grep CustomLog /etc/apache2/apache2.conf
# grep CustomLog /etc/httpd/conf/httpd.conf

Output sampel:

# a CustomLog directive (see below).
#CustomLog "/var/log/httpd-access.log" common
CustomLog "/var/log/httpd-access.log" combined 
hector adam
sumber
4
Jawaban terbaik menurut saya: detail, ringkas dan multi-platform untuk kebanyakan * nix.
Sopalajo de Arrierez
Seluruh jawaban ini disalin dari halaman ini: cyberciti.biz/faq/apache-logs
Gert Grenander
5

temukan lokasi file Apache access.log di Debian / Ubuntu Linux

Pada mesin saya /etc/apache2/apache2.confmenunjuk ke ${APACHE_LOG_DIR}variabel lingkungan bukan direktori log itu sendiri.

Langkah (tambahan) berikut diperlukan untuk menemukan direktori log yang sebenarnya:

$ grep APACHE_LOG_DIR /etc/apache2/envvars
export APACHE_LOG_DIR=/var/log/apache2$SUFFIX
$

envvars berisi variabel lingkungan default untuk Apache.

Jadi, untuk melihat log akses, gunakan

$ sudo tail -f /var/log/apache2/access.log
Dmytro Dzyubak
sumber