Справка MAMP Config, отображение ошибок PHP - PullRequest
8 голосов
/ 19 февраля 2010

Я использую последнюю версию MAMP на Snow Leopard.

Мой файл php.ini был настроен для отображения ошибок. display_errors = on. Phpinfo (); На странице отображается статус сообщения об ошибке, он включен. Я перезагружал свой веб-сервер несколько раз.

Я искал в Google и не могу найти аналогичных проблем. Все просто говорят, чтобы делать именно то, что я сделал, но это не работает. Страницы останутся пустыми (без отчетов), если я намеренно укажу ошибки.

Есть мысли о том, в чем может быть проблема?

Ответы [ 6 ]

28 голосов
/ 13 марта 2013

Для любых будущих постеров, которые сталкиваются с этой проблемой ...

У меня возникла та же проблема, и я обнаружил, что вносил изменения в неправильные файлы php.ini. Запустите phpinfo и найдите путь к активному файлу php.ini, чтобы убедиться, что вы редактируете правильный файл.

На моей установке mamp было несколько экземпляров каталога / conf с файлами php.ini. Нужные мне файлы php.ini находились в каталоге / bin / php / php [версия #] / conf, а не в каталоге MAMP / conf.

Точный путь к файлу php.ini, который мне нужно было отредактировать:

Applications / MAMP / bin / PHP / php5.4.10 / CONF / php.ini

Изменить display_errors = Off на display_errors = On

5 голосов
/ 19 февраля 2010

В дополнение к директиве display_errors, которая должна быть установлена ​​на On, вам может потребоваться настроить error_reporting.

ДляНапример, вы можете использовать это в вашем php.ini файле:

error_reporting = E_ALL


Еще один полезный для проверки вариант может заключаться в размещении такой части кода PHP в начале вашего сценария:

error_reporting(E_ALL);
ini_set('display_errors', 'On');

Это полезно, когда у вас нет доступа к php.ini и / или вы просто хотите быстро выполнить тестирование без перезапуска веб-сервера.


Какsidenote, когда дело доходит до отображения ошибок, расширение Xdebug действительно здорово: когда оно установлено / включено / настроено, вместо того, чтобы просто иметь сообщение об ошибке, вы получите полную трассировку стека, что гораздо полезнее; -)

1 голос
/ 20 мая 2012

Недавно я столкнулся с той же проблемой - в моем случае я скачал клиентский сайт Wordpress с их живого сервера, который, как оказалось, был подделан вредоносной вставкой скрипта, которая переопределяла сообщение об ошибке, чтобы избежать обнаружения.

Немного поздно, чтобы помочь ОП (!), Но, возможно, пригодится будущим поисковикам.

0 голосов
/ 08 октября 2015

Вот поворот к тому же ответу.У меня были те же проблемы, я просто скопировал и вставил путь ini со страницы php info и все те же проблемы ...

Оказывается, я допустил синтаксическую ошибку, когда редактировал свой блок error_reporting в php.ini.

У меня был E_NOTICE, а не ~ E_NOTICE.

: (

Так что в php.ini могут возникнуть ошибки, если вы редактировали его и совершенно забыли, что вы что-то редактировали.

0 голосов
/ 29 января 2014

Если у вас несколько php sdks с несколькими версиями, сначала убедитесь, что вы редактируете правильный файл php.ini.Если вы были правы, добавьте эти две строки в начале кода.

error_reporting(E_ALL);
ini_set('display_errors', 'On'); // or ini_set('display_errors', 1);
0 голосов
/ 20 февраля 2010

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

php_value display_errors 0

и измените значение на 1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...