Встроенное расположение журнала ошибок сервера PHP

Я не знаю, есть ли они? но php, встроенный в веб-сервер, также сохраняет свои журналы ошибок в файле? для целей хвоста, например, при создании виртуального хоста в apache.

UPDATE: я использую mac osx

Да, PHP имеет встроенные функции журнала ошибок.

PHP регистрирует ошибки в этом файле автоматически.

Если вы хотите регистрировать ошибки, используйте функцию error_log ()

Местоположение файла изменяется в зависимости от окружающей среды.

например

в Ubuntu 12.04, его

var/log/php_errors.log

В окнах XAMPP,

\xampp\php\logs\php_errors.log

В Mac OS,

/var/log/apache2/php_errors.log

Встроенный веб-сервер по умолчанию не регистрируется нигде, поэтому вам нужно предоставить php.ini для его настройки. Например, если вы создали файл php.ini с этим контентом:

 error_log = /Users/me/test.log date.timezone = UTC 

Затем вы можете запустить встроенный веб-сервер PHP следующим образом:

 php -S 127.0.0.1:8080 -c php.ini 

И вызовы error_log () будут регистрироваться в указанном вами файле.

При использовании встроенного сервера PHP на macOS вам необходимо указать error_log в вашем конфигурационном файле php.ini ( php -i | grep php.ini ).

Если вы решите использовать syslog (а не файл журнала), например:

 error_log = syslog 

Затем, чтобы сбрасывать журналы, вы можете использовать команду log на macOS, например

 log stream --predicate 'processImagePath contains "php"' 

В противном случае используйте определенный путь к файлу для журнала ошибок (например, /usr/local/var/log/php-error.log ).