Saya perlu menemukan di mana Apache menyimpan akses dan kesalahan log untuk situs.
Saya memiliki akses root ke server tempat puluhan situs di-host. Saya mencoba men-debug salah satu situs tersebut. Ketika saya menjelajahi situs, itu tidak muncul di /var/logs/apache2/access.log
atau /var/logs/apache2/error.log
. (File - file itu ada di sana , dan situs-situs lain akan mencatatnya. Bahkan, ada ratusan file log yang berbeda).
Tidak locate httpd.log
juga tidak find . -iname httpd.log
dilakukan dalam /
masalah hasil apa pun.
Konfigurasi apache untuk situs ini adalah:
ServerName REDACTED.com.br
DocumentRoot /var/www/xyz/wiki
AssignUserId xyz_wiki xyz_wiki
<Directory /var/www/xyz/wiki/data>
order allow,deny
deny from all
</Directory>
<Directory /var/www/xyz/wiki/conf>
order allow,deny
deny from all
</Directory>
<Directory /var/www/xyz/wiki/bin>
order allow,deny
deny from all
</Directory>
<Directory /var/www/xyz/wiki/inc>
order allow,deny
deny from all
</Directory>
php_admin_value open_basedir /var/www/xyz/wiki/:/mnt/vdImagem/www/xyz/wiki/
debian
logs
apache-httpd
Orang Brasil itu
sumber
sumber
/var/log/apache2/access.log
mana duplikat menyarankan.sudo lsof -nP -c apache2 -c httpd | grep -i log
Jawaban:
Anda dapat menanyakan tentang informasinya dari file log Apache tetapi umumnya lebih baik untuk menanyakan tentang hal-hal ini dari executable yang sebenarnya. Mem-parsing log bisa jadi rumit dan Anda mungkin akan membuat kesalahan jika Anda tidak terbiasa dengan cara pengaturan tertentu dilakukan pada sebuah kotak.
httpd -V
Item utama yang ingin Anda lihat adalah sebagai berikut.
Ini memberi tahu Anda direktori "root" di mana semua file yang akan dirujuk oleh Apache dimulai dari:
file konfigurasi ditentukan, mulai dari sini. Perhatikan bahwa jalur ini relatif terhadap jalur yang disebutkan dalam # 1, jadi itu akan menjadi
/etc/httpd/conf/httpd.conf
.Log kesalahan ada di sini.
CATATAN: Yang ini mungkin agak membingungkan pada awalnya tetapi pada distro Red Hat ada tautan yang sering dibuat dalam direktori ini, yang
/etc/httpd
disebutlogs
.File log lain yang mungkin digunakan oleh Apache akan didefinisikan lebih lanjut dalam file konfigurasi
/etc/httpd/conf/httpd.conf
,.sumber
apache2 -V
Lihat di konfigurasi apache Anda untuk string
ErrorLog
.Biasanya ada satu untuk proses Apache itu sendiri. Setiap VirtualHost juga dapat menentukan file log sendiri jadi periksa juga.
Jika VirtualHost tidak mendefinisikan file lognya sendiri maka itu akan menggunakan yang ditentukan dalam konfigurasi global. Jika Anda merasa telah menemukan file log yang benar tetapi Anda tidak melihat informasi yang Anda butuhkan, maka coba tambah
LogLevel
.sumber
/etc/apache2# rgrep "ErrorLog" .
menampilkan lusinan file konfigurasi yang menentukan${APACHE_LOG_DIR}/error.sitename.log
, tetapi ini bukan salah satunya./etc/apache2# rgrep "LogLevel" .
hanya memberi saya beberapa file default.${APACHE_LOG_DIR}
didefinisikan sebagai/var/log/apache2
default. Periksa/etc/defaults/apache2
untuk melihat apakah sudah diubah.LogLevel
set untuk VirtualHost tertentu Anda dapat menambahkannya.Saya baru saja menemukan file
/etc/apache2/conf.d/other-vhosts-access-log
yang berisiSepertinya itu adalah cara untuk menggabungkan semua log dari vhosts dalam satu file. Saya telah memeriksa dan akses direkam di sana.
( sumber )
Memasukkan ErrorLog dan arahan AccessLog pada file konfigurasi untuk situs itu memberi saya file log yang terpisah.
sumber