Sur un serveur Linux exécutant Apache et PHP 5, nous avons plusieurs hôtes virtuels avec des fichiers journaux séparés. Nous ne pouvons pas sembler séparer le php error_log
entre les hôtes virtuels.
Remplacer ce paramètre dans le <Location>
de httpd.conf
ne semble rien faire.
Existe-t-il un moyen d'avoir un php distinct error_logs
pour chaque hôte virtuel?
linux
apache
virtualhost
Michael Stum
la source
la source
httpd.conf
il est écrit, ou?Si quelqu'un vient chercher, cela devrait ressembler à ceci:
Ceci est pour le développement uniquement car il
display_error
est activé. Vous remarquerez que le journal des erreurs Apache est distinct du journal des erreurs PHP. Les bonnes choses sont làphp.error.log
.Jetez un œil ici pour la
error_reporting
clé http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reportingla source
En général , je le préciser dans un
.htaccess
fichier ou levhost.conf
sur le domaine que je travaille sur. Ajoutez ceci à l'un de ces fichiers:la source
php_admin_value
etphp_value
?Le comportement par défaut pour error_log () est de sortir dans le journal des erreurs Apache. Si cela ne se produit pas, vérifiez vos paramètres php.ini pour la directive error_log. Laissez-le non défini pour utiliser le fichier journal Apache pour l'hôte virtuel actuel.
la source
Ne définissez pas la
error_log
destination de vossyslog
contenuseg /var/log/apache2
, car les erreurs seront interceptéesErrorLog
. Au lieu de cela, créez unsubdir
dans votre dossier de projet pour les journaux et faitesphp_value
error_log "/path/to/project/logs"
. Cela vaut pour les.htaccess
fichiers et les hôtes virtuels . Assurez - vous également que vous mettezphp_flag
log_errors
surla source
Avez-vous essayé d'ajouter le
php_value error_log '/path/to/php_error_log
à votre configuration VirtualHost?la source
Oui, tu peux essayer,
dans
.htaccess
ou vous pouvez faire en sorte que les utilisateurs utilisentini_set()
au début de leurs scripts s'ils souhaitent avoir une journalisation.Une autre option serait d'activer par défaut les scripts
php.ini
dans le dossier avec le script, puis d'aller dans le dossier racine de l'utilisateur / hôte, puis à la racine du serveur, ou quelque chose de similaire. Cela permettrait aux hôtes d'ajouter leurs propresphp.ini
valeurs et leurs propreserror_log
emplacements.la source
Cela fonctionne pour moi, mais je dois changer l'autorisation du fichier journal.
ou Apache écrira le journal dans son fichier
error_log
.la source
Mon Apache avait quelque chose comme ça dans httpd.conf. Modifiez simplement les paramètres ErrorLog et CustomLog
la source
Tu peux essayer:
Mais je ne sais pas si cela fonctionnera. J'ai essayé sur mes sites sans succès.
la source
Créez un hôte virtuel simple:
exemple de nom d'hôte: -
thecontrolist.localhost
C: \ Windows \ System32 \ drivers \ etc
127.0.0.1 thecontrolist.localhost
dans le fichier hostsC: \ xampp \ apache \ conf \ extra \ httpd-vhosts.conf
N'oubliez pas de redémarrer votre apache. pour plus, consultez ce lien
la source