Где PHP хранит журнал ошибок? (php5, apache, fastcgi, cpanel)

Я нахожусь на общем хостинге и имею Cpanel, Apache, PHP работает fastcgi. Где PHP хранит журнал ошибок?

Есть ли другой способ найти журнал ошибок в среде общедоступного хостинга вместо того, чтобы проходить через всю структуру сайта, чтобы искать файлы error_log?

У меня есть доступ к php.ini (я использую PHP версии 5.2.16).

+353
источник поделиться
20 ответов

Php хранит журналы ошибок в /var/log/apache2, если php является модулем apache2. Общие хосты часто хранят файлы журналов в корневой папке /log. Но... если у вас есть доступ к файлу php.ini, вы можете сделать это:

error_log = /var/log/php-scripts.log

Согласно комментарию rinogo: если вы используете cPanel, файл главного журнала, который вы, вероятно, ищете, хранится (по умолчанию) в

/usr/local/apache/logs/error_log

Если все остальное не удается, вы можете проверить расположение файла журнала, используя

<?php phpinfo(); ?>
+283
источник

Попробуйте phpinfo() и проверьте наличие "error_log"

+81
источник
другие ответы

Связанные вопросы


Похожие вопросы

Linux

php --info | grep error 

Терминал выведет местоположение журнала ошибок.

Окна

php --info | findstr /r /c:"error_log"

В командной строке выводится местоположение журнала ошибок

Чтобы установить местоположение журнала

Откройте php.ini и добавьте следующую строку:

error_log = /log/myCustomLog.log

<суб > Спасибо @chelmertez, @Boom за эти (комментарии к вопросу). Суб >

+38
источник

В среде LAMP ошибки php по умолчанию направлены на этот ниже файл.

/var/log/httpd/error_log

Доступ ко всем журналам доступа:

/var/log/httpd/access_log
+28
источник

Как найти свой журнал ошибок PHP в Linux:

[email protected] /var $ sudo updatedb
[sudo] password for eric:
[email protected] /var $ sudo locate error_log

/var/log/httpd/error_log

Другой эквивалентный способ:

[email protected] /home/eric $ sudo find / -name "error_log" 2>/dev/null

/var/log/httpd/error_log
+16
источник

Похоже, что по умолчанию php не регистрирует ошибки, ключ error_log в php.ini закомментирован во всей установке, которую я видел.

Обычно I:

  • найдите файлы php.ini. locate php.ini.
  • Поиск этих файлов для значения error_reporting;

    Которое должно быть настроено на то, что вам достаточно для объединения уровней журнала php.,

    Например: E_ALL & ~E_DEPRECATED & ~E_STRICT

  • Проверьте значение error_log, чтобы убедиться, что оно указывает на фактическое место и не закомментировано.

    Значение по умолчанию не дает полный путь, только имя файла, я не знаю, где этот путь разрешается нормально. Вероятно, /var/log/.

+11
источник

Он также может быть /var/log/apache2/error.log, если вы находитесь в движке Google.

И вы можете видеть такой хвост:

tail -f /var/log/apache2/error.log
+10
источник

Вы должны использовать абсолютный путь при настройке переменной error_log в файле php.ini, в противном случае журналы ошибок будут храниться в соответствии с вашим относительным путем.

error_log = /var/log/php.errors

Другим решением было бы написать простой script, в котором будут перечислены все файлы журналов ошибок из дерева каталогов.

+9
источник

Если у вас есть сборка Apache и PHP из источника, то по умолчанию журналы ошибок генерируются на вашем ${Apache install dir}/logs/error_log i.e вообще /usr/local/apache2/logs/error_log. Если вы установили его из репозитория, вы найдете его в /var/log/apache2/error_log. Вы также можете установить путь в своем php.ini и проверить его, вызвав phpinfo().

+5
источник

Лучший способ - посмотреть в файле httpd.conf и посмотреть, что такое по умолчанию. Он также может быть переопределен вашим конкретным виртуальным хостом. Начну с поиска /etc/httpd/conf/httpd.conf или /etc/apache2/httpd.conf и поискать error_log. Он может быть указан как /var/log/httpd/error _log или /var/log/apache2/error_log, но он также может быть указан как просто logs/error_log.

В этом случае это относительный путь, что означает, что он будет находиться под /etc/httpd/logs/error_log. Если вы все еще не можете найти его, проверьте нижнюю часть вашего файла httpd.conf и посмотрите, куда включены ваши виртуальные хосты. Это может быть в /etc/httpd/conf.d/<- как "другое" или "дополнительное". Ваш виртуальный хост может переопределить его, затем с помощью ErrorLog "/path/to/error_log".

+5
источник

При настройке файла журнала ошибок в php.ini вы можете использовать абсолютный путь или относительный путь. Относительный путь будет разрешен в зависимости от местоположения генератора script, и вы получите файл журнала в каждом каталоге, в котором есть скрипты. Если вы хотите, чтобы все ваши сообщения об ошибках переходили в один и тот же файл, используйте абсолютный путь к файлу.

Подробнее здесь: http://www.php.net/manual/en/ref.errorfunc.php#53025

+3
источник

Если вы используете протокол php5-fpm, значение по умолчанию должно быть под

/var/log/php5-fpm.log
+3
источник

NGINX обычно хранит его в /var/log/nginx/error.log или access.log. (В любом случае на Ubuntu)

+3
источник

где бы вы этого ни пожелали, если вы установили его вызов функции: error_log ($ errorMessageforLog. "\n", 4, 'somePath/SomeFileName.som');

+2
источник

Найдите файл httpd.conf для ErrorLog, запустив cat <file location> | grep ErrorLog в командной строке. Например:

$ cat /etc/apache2/httpd.conf | grep ErrorLog

Вывод:

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
ErrorLog "/private/var/log/apache2/error_log"

Найдите строку, начинающуюся с ErrorLog, и там ваш ответ.

Примечание. Для виртуальных хостов вы можете редактировать файл виртуальных хостов httpd-vhosts.conf, чтобы указать другое расположение файла журнала.

+2
источник
php --info | grep error

Это полезно прокомментировал sjas на вопрос. так что я включил это как ответ.

+1
источник
  1. Вы можете зайти в папку File Manager Check Logs.
  2. проверьте файл журнала в папке public_html.
  3. проверьте файл php phpinfo(), где хранится журнал.
0
источник

Журналы ошибок cPanel находятся в:

/USR/локальные /Cpanel/журналы/

/USR/локальные /Apache/журналы/

По умолчанию журналы Apche расположены внутри:

/Вар/Журнал/апач

или же

/Вар/Журнал /apache2

Если кто-то использует пользовательское местоположение журнала, вы можете проверить его, выполнив следующую команду:

cat/etc/apache2/conf/httpd.conf | grep ErrorLog

Если вы получаете сообщение об ошибке, что каталог apache2 не существует, вы можете запустить эту команду, чтобы найти правильное местоположение:

где апач

или же

где apache2

0
источник

Вы находитесь в общей среде и не можете найти журнал ошибок, всегда проверяйте, есть ли у cPanel опция Errors на вашей панели управления cPanel. Если вы не можете найти журнал ошибок, то вы можете найти его там.

На панели поиска cPanel, Search Error, будут отображаться страницы ошибок, которые в основном представляют собой списки различных страниц ошибок http, а другие ошибки - это места, где отображаются журналы ошибок.

Другие места для поиска в общей среде: /home/имя пользователя/журналы/home/имя пользователя /public_html/error_log

0
источник

Wordpress

Wordpress направит error_log() сообщения на /wp-content/debug.log, если для параметра WP_DEBUG_LOG установлено значение true.

См. документацию Wordpress для WP_DEBUG_LOG

-1
источник

Посмотрите другие вопросы по меткам или Задайте вопрос