Чи підтримують програмісти чи вимикають повідомлення про помилки?


12

Мені було цікаво, чи програмісти PHP продовжують включати чи вимикати повідомлення про помилки в php.ini після доставки веб-сайту?

php 

Відповіді:


18

Ви завжди повинні тримати звітність про помилки, реєстрацію найважливіших подій та аудит. В іншому випадку, коли ваша програма з якоїсь причини вийде з ладу, вам буде важко зрозуміти, що сталося.

З цього приводу повідомлення про помилки потрібно робити внутрішньо і ніколи не показувати кінцевому користувачеві, оскільки це було б проблемою безпеки, щоб показати конфіденційну інформацію. Для цього можна скористатися display_errorsі log_errorsналаштуваннями: у php.ini-productionпершому встановлено значення off, а у другому - on.

До речі, php.ini-productionвже відповідає на ваше запитання:

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

Ще один коментар говорить вам про те, що:

За замовчуванням PHP налаштовано на всі помилки, сповіщення та попередження, Окрім тих, що стосуються E_NOTICE та E_STRICT, які разом охоплюють найкращі практики та рекомендовані стандарти кодування в PHP. З міркувань продуктивності це рекомендований параметр звітування про помилки. Ваш сервер виробництва не повинен витрачати ресурси, нарікаючи на кращі практики та стандарти кодування.


Дякую за відповідь. Дуже очевидно, що повідомлення про помилки є дуже корисним під час розробки веб-сайту, але я розгубився, якщо розробники вимкнуть його після створення веб-сайту, щоб клієнт не бачив жодної помилки. Дякуємо за те, що очистили концепцію.

Якщо розробник error_reportingвимикається у виробництві, він, ймовірно, щось приховує.
Лекенштейн

Ви хочете перетворити налагодження та протоколювання на рівні трасування у виробництві. Повідомлення про рівень помилок є важливим, коли все піде не так. Більшість сайтів хочуть, щоб увімкнено інформаційний журнал, якщо це буде зроблено належним чином.
BillThor

@FahadUddin Ви не хочете, щоб глядачі вашого веб-сайту / програми бачили помилки. Єдине, що ми обмежуємо - це відображення помилок кінцевому користувачеві, реєстрація піклується про інше. Однак хороша практика наказує, що у випадку помилки на рівні програми (наприклад, неправильне з'єднання БД), ми повідомляємо кінцевого користувача, що щось пішло не так, і про те, що додається, попередження розробників негайно.
Ян Льюїс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.