Ответы:
По умолчанию /var/log/apache2/error.log
.
Это можно настроить в /etc/php5/apache2/php.ini
.
error.log.*
файлы
Проверьте эти настройки в php.ini
:
error_reporting = E_ALL | E_STRICT
(как рекомендуется для разработки в php.ini)error_log = /var/log/php_errors.log
Затем создайте файл журнала вручную
touch /var/log/php_errors.log
chown www-data: /var/log/php_errors.log
chmod +rw /var/log/php_errors.log
Теперь вы можете просматривать ошибки PHP таким образом
tail /var/log/php_errors.log
Это приятное решение этой проблемы для меня.
chmod 640 /var/log/php_errors.log
Вы также можете определить конкретный файл журнала ошибок для каждого VirtualHost в Apache. Если у вас есть VirtualHost, определенный /etc/apache2/sites-available/
и включенный /etc/apache2/sites-enabled
(включенный с помощью sudo a2ensite [your-virtualhost-definition-file]
), вы можете изменить журнал ошибок, добавив следующую строку в конфигурацию VirtualHost:
ErrorLog ${APACHE_LOG_DIR}/[your-vhost]-error.log
Это может быть полезно, если у вас много vhosts и вы хотите разделить, где они сообщают об ошибках.
Кроме того, вы можете просматривать журнал ошибок в реальном времени, выполнив следующую команду (адаптируйтесь к вашему собственному файлу журнала, если он отличается от значения по умолчанию):
sudo tail -f /var/log/apache2/error.log
Это особенно полезно при живой отладке.
error_log = syslog
в php.ini
Если Apache был настроен с Webmin / Virtualmin, для каждого VirtualHost есть отдельная папка.
это
~/logs
папка для каждого пользователя VirtualHost.
Это два файла:
~/logs/access_log
а также
~/logs/error_log
Так они
/home/onedomain/logs/access_log
/home/onedomain/logs/error_log
/home/anotherdomain/logs/access_log
/home/anotherdomain/logs/error_log
...
и т.п.
Чтобы просмотреть файлы журналов для каждого конкретного домена, войдите в систему как владелец VirtualHost с этим именем хоста и запустите
tail -f ~/logs/error_log