2015-10-12 2 views
0

НастройкаPHP error_log работает только на некоторых сценариях

  • IIS 8.5 на Windows, 2012 Server,
  • менеджер PHP
  • PHP 5.5
  • log_errors установлен на в файле php.ini

Я использовал диспетчер PHP для выбора моего файла журнала, и у меня есть несколько сценариев в моем приложении, где error_log() работает так, как ожидалось. Однако любой из новых скриптов, которые я создал, я не могу получить никакого ввода в файл журнала с помощью error_log().

Еще одна странная проблема - это один из скриптов, в которых работает error_log(), есть несколько функций отправки уведомлений, которые error_logs уведомляют пользователей и т. Д. Это все работает отлично, если скрипт запускается напрямую, но если я попытаюсь включить этот скрипт в другом файле, чтобы использовать мои функции уведомлений, даже несмотря на то, что функции выполняются должным образом. Я знаю, что у вас уже есть какие-либо сообщения об ошибках в этой функции.

Я даже пытался добавить

error_reporting(E_ALL); 
ini_set('display_errors', 0); 
ini_set('log_errors', 1); 
ini_set('error_log', 'c:\Windows\Logs\PHP\php.log'); 

непосредственно в PHP файлы, которые я хочу войти на и до сих пор ничего не получают.

ответ

0

Отключить error_logging в php.ini, затем повторно включить его, а также предоставить путь к новому файлу журнала в каталоге inetpub/temp /. (Раньше это было в C:/Windows/logs/PHP)

Я понял, что единственные сценарии, в которых регистрируются ошибки, где те, где выполняется планировщик задач. Я не уверен, что задание cron запускается как система, а IIS или php - как другой пользователь без права доступа к этой папке.