Ошибки PHP НЕ отображаются в браузере [Ubuntu 10.10] - PullRequest
56 голосов
/ 19 февраля 2011

Я новичок в PHP и во всем стеке LAMP, но мне удалось его запустить и запустить на моей системе Ubuntu 10.10. Кажется, что все работает, за исключением повторной отправки ошибок в браузере, который, кажется, просто не работает (и без которого я не могу работать!).

Я прочитал ряд статей и других тем, которые указывают, что следующие значения должны применяться в файле /etc/php5/apache2/php.ini:

  • display_errors = On
  • display_startup_errors = On

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

Любая помощь будет приветствоваться.

Ответы [ 12 ]

57 голосов
/ 24 ноября 2012

Не просто включить первое вхождение display_errors в файле php.ini.Убедитесь, что вы прокрутите вниз до «реальной» настройки и измените ее с Off на On.

Дело в том, что если вы согласитесь с изменением (т.е. раскомментировать + добавить = On) оченьПри первом появлении display_errors ваши изменения будут перезаписаны где-то в строке 480, где снова установлено значение Off.

43 голосов
/ 20 января 2012

У меня была та же проблема - решил ее, установив display_errors = On в обоих php.ini файлах.

/etc/php5/apache2/php.ini
/etc/php5/cli/php.ini

Затем перезапустите Apache:

sudo /etc/init.d/apache2 restart

Надеюсь, это поможет.

37 голосов
/ 07 октября 2011

Чтобы это работало, вы должны изменить следующие переменные в вашем php.ini:

; display_errors
; Default Value: On
; Development Value: On
; Production Value: Off

; display_startup_errors
; Default Value: On
; Development Value: On
; Production Value: Off

; error_reporting
; Default Value: E_ALL & ~E_NOTICE
; Development Value: E_ALL | E_STRICT 
; Production Value: E_ALL & ~E_DEPRECATED

; html_errors 
; Default Value: On 
; Development Value: On 
; Production value: Off

; log_errors
; Default Value: On 
; Development Value: On 
; Production Value: On

Найдите их, так как они уже определены, и укажите желаемое значение. Затем перезагрузите сервер apache2, и все будет работать нормально. Удачи!

8 голосов
/ 03 марта 2011

После того, как вы отредактируете /etc/php5/apache2/php.ini, обязательно перезапустите apache.

Это можно сделать, выполнив:

sudo service apache2 restart
5 голосов
/ 27 февраля 2017
  1. Сначала вам нужно найти путь к файлу php.ini
  2. Файл будет найден по указанному пути / etc / php / 7.0 /apache2 / .Если вы изменяете значения в папке CLI или папке CGI, это не будет работать.
  3. Внесите следующие изменения

display_errors = On

Перезагрузите сервер Apache

/ etc / init.d / apache2 restart

4 голосов
/ 08 октября 2013

Если у вас есть локальные значения, переопределяющие главные значения, вы не измените их значения в php.ini посмотрите на эти переменные в .htaccess или в файле конфигурации виртуального хоста.

...

        php_admin_value display_errors On
        php_admin_value error_reporting E_ALL
</VirtualHost>

Если вы редактируете vhost, перезапустите apache,

$ sudo service apache2 restart

.htaccess редактировать не нужно Apache для перезапуска

3 голосов
/ 31 марта 2018

Выполните следующие шаги,

1). Open your php.ini file via sublime through path 
    /etc/php/7.2/apache2/php.ini

2). find display_errors in that file

3). Un-comment these lines of code
      display_errors
      Default Value: On
      Development Value: On
      Production Value: Off

      display_startup_errors
      Default Value: Off
      Development Value: On
      Production Value: Off

      error_reporting
      Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
      Development Value: E_ALL
      Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT

      html_errors
      Default Value: On
      Development Value: On
      Production value: On

4). Save the file and then type the following command in the terminal
     sudo service apache2 restart


your errors are now showing in the browser
1 голос
/ 28 июля 2017

Используйте функцию phpinfo();, чтобы просмотреть таблицу настроек в вашем браузере и найти

Путь к файлу конфигурации (php.ini)

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

Также проверьте display_errors = On, html_errors = On и error_reporting = E_ALL внутри этого файла

Перезапустите Apache.

0 голосов
/ 09 июля 2015

должно перекрываться, поэтому выключено.Попробуйте открыть в текстовом редакторе, найдите display_errors и включите его.У меня работает

0 голосов
/ 23 апреля 2014

Я просто застрял в той же проблеме, когда понял, что использую форму открытого короткого тега:

<? echo 'nothing will be print if no open_short_tag option is enabled'; ?>

Вам нужно перейти к файлу /etc/apache2/php.ini и установить short_open_tag = Off до On, затем sudo service apache2 restart!

Приветствия!

...