J'ai besoin de trouver où Apache conserve les journaux d'accès et d'erreur pour un site.
J'ai un accès root à un serveur sur lequel des dizaines de sites sont hébergés. J'essaie de déboguer l'un de ces sites. Lorsque je navigue sur le site, il n'apparaît pas sur /var/logs/apache2/access.log
ou /var/logs/apache2/error.log
. (Les fichiers sont là et d'autres sites y sont connectés. En fait, il existe des centaines de fichiers journaux différents).
Ni locate httpd.log
ni find . -iname httpd.log
effectué à l' /
émission aucun résultat.
La configuration d'apache pour le site est:
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
Ce gars brésilien
la source
la source
/var/log/apache2/access.log
laquelle se trouve ce doublon.sudo lsof -nP -c apache2 -c httpd | grep -i log
Réponses:
Vous pouvez vous renseigner sur ses informations à partir des fichiers journaux d'Apache, mais il est généralement préférable de se renseigner sur ces choses à partir de l'exécutable réel. L'analyse des journaux peut être délicate et vous ferez probablement une erreur si vous n'êtes pas familier avec la façon dont une configuration particulière a été effectuée sur une boîte.
httpd -V
Les éléments clés que vous souhaitez examiner sont les suivants.
Cela vous indique le répertoire "racine" à partir duquel tous les fichiers auxquels Apache fera référence commencent:
les fichiers de configuration sont définis, en commençant ici. Notez que ce chemin est relatif au chemin mentionné dans # 1, il en serait ainsi
/etc/httpd/conf/httpd.conf
.Le journal des erreurs est ici.
REMARQUE: celui-ci peut être un peu déroutant au début, mais sur les distributions Red Hat, il existe un lien souvent créé dans ce répertoire,
/etc/httpd
appelélogs
.D' autres fichiers journaux qui pourraient être utilisés par Apache seront définies plus loin dans le fichier de configuration,
/etc/httpd/conf/httpd.conf
.la source
apache2 -V
Regardez dans votre configuration apache pour la chaîne
ErrorLog
.Habituellement, il y en a un pour le processus Apache lui-même. Chaque VirtualHost peut également définir ses propres fichiers journaux, vérifiez-les également.
Si VirtualHost ne définit pas son propre fichier journal, il utilisera celui spécifié dans la configuration globale. Si vous pensez avoir trouvé le fichier journal correct mais que vous ne voyez pas les informations dont vous avez besoin, essayez d'augmenter le fichier
LogLevel
.la source
/etc/apache2# rgrep "ErrorLog" .
affiche des dizaines de fichiers de configuration qui spécifient${APACHE_LOG_DIR}/error.sitename.log
, mais ce n'est pas l'un d'entre eux./etc/apache2# rgrep "LogLevel" .
ne me donne que quelques fichiers par défaut.${APACHE_LOG_DIR}
est défini comme/var/log/apache2
par défaut. Vérifiez/etc/defaults/apache2
si elle a été modifiée.LogLevel
ensemble pour un hôte virtuel , vous pouvez ajouter un particulier.Je viens de trouver un fichier
/etc/apache2/conf.d/other-vhosts-access-log
qui contientOn dirait que c'est un moyen de combiner tous les journaux des vhosts dans un seul fichier. J'ai vérifié et les accès y étaient enregistrés.
( source )
L'insertion d'un ErrorLog et d'une directive AccessLog dans le fichier de configuration de ce site m'a fourni des fichiers journaux distincts.
la source