프로그래머가 오류보고를 유지하거나 해제합니까?


12

웹 사이트를 제공 한 후 PHP 프로그래머가 php.ini에서 error_reporting을 계속 켜거나 끄는 지 궁금합니다.

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프로덕션 환경에서 전원을 끄면 숨길 가능성이 있습니다.
— Lekensteyn

프로덕션에서 디버그 및 추적 레벨 로깅을 설정하려고합니다. 오류가 발생하면 오류 수준보고가 필수적입니다. 대부분의 사이트는 정보 로깅을 적절하게 수행 할 경우 정보 로깅을 활성화하려고합니다.
— BillThor

@FahadUddin 웹 사이트 / 애플리케이션의 뷰어에게 오류가 표시되는 것을 원하지 않습니다. 우리가 제한하는 유일한 것은 최종 사용자에게 오류를 표시하는 것입니다. 로깅은 나머지를 처리합니다. 그러나 애플리케이션 수준 오류 (예 : 잘못된 DB 연결)가 발생하면 최종 사용자에게 문제가 있음을 알리고 백엔드에서 개발자에게 즉시 알립니다.
— Ian Lewis
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.