Où se trouvent les fichiers journaux Apache et PHP?

228

J'ai installé Apache, PHP et MySQL sur Ubuntu 10.10 desktop edition et tout fonctionne correctement.
Sauf que je ne sais pas où chercher les fichiers journaux Apache ou PHP.

Stann
la source

Réponses:

315

Par défaut, /var/log/apache2/error.log.

Cela peut être configuré dans /etc/php5/apache2/php.ini.

misterben
la source
Oui. je l'ai. c'était un peu différent sur Windows.
Stann
1
Les journaux Apache peuvent être pivotés, vous pouvez donc vérifier tous les error.log.*fichiers
nuoritoveri
@misterben pouvez-vous m'aider à trouver l'activation du même journal d'erreur pour centOS 7? une idée?
Bouteille rouge
unix.stackexchange.com/a/269090/2799 a des infos pour d'autres distributions
misterben
Et si Apache n'est pas installé, juste php?
Mils
67

Vérifiez ces paramètres dans php.ini:

  1. error_reporting = E_ALL | E_STRICT (comme recommandé pour le développement dans php.ini)
  2. error_log = /var/log/php_errors.log
  3. Créez ensuite le fichier journal manuellement

    touch /var/log/php_errors.log
    chown www-data: /var/log/php_errors.log
    chmod +rw /var/log/php_errors.log
    

Maintenant, vous pouvez voir les erreurs PHP de cette façon

tail /var/log/php_errors.log

C’est pour moi une solution agréable à ce problème.

Nikolay Chuprina
la source
4
aurait également besoin d'une étape pour redémarrer Apache pour que les paramètres prennent effet
rbawaskar
Gardez les choses serrées:chmod 640 /var/log/php_errors.log
berbt le
26

Vous pouvez également définir un fichier journal d'erreur spécifique pour chaque hôte virtuel dans Apache. Si vous avez un quelconque VirtualHost défini dans /etc/apache2/sites-available/et activé dans /etc/apache2/sites-enabled(activé avec sudo a2ensite [your-virtualhost-definition-file]), vous pouvez modifier le journal des erreurs en ajoutant la ligne suivante dans votre configuration VirtualHost:

ErrorLog ${APACHE_LOG_DIR}/[your-vhost]-error.log

Cela peut être utile si vous avez beaucoup d’hôtes vhost et que vous voulez séparer les endroits où ils rapportent les erreurs.

De plus, vous pouvez regarder votre journal des erreurs en direct en lançant la commande suivante (adaptez à votre propre fichier journal s'il est différent de celui par défaut):

sudo tail -f /var/log/apache2/error.log

Ceci est particulièrement utile lors du débogage en direct.

ywarnier
la source
Ça marche! Si je commente error_log = syslogdans php.ini
mmv-ru
2

Si Apache a été configuré avec Webmin / Virtualmin, il existe un dossier distinct pour chaque hôte virtuel.

Il est

~/logs

dossier pour chaque utilisateur VirtualHost.

Ce sont deux fichiers:

~/logs/access_log

et

~/logs/error_log

Donc ils sont

/home/onedomain/logs/access_log

/home/onedomain/logs/error_log

/home/anotherdomain/logs/access_log

/home/anotherdomain/logs/error_log

...

etc.

Pour afficher les fichiers journaux de chaque connexion de domaine particulier en tant qu'utilisateur propriétaire VirtualHost de ce nom d'hôte et exécuter

tail -f ~/logs/error_log

Ilyich
la source