Drupal에서 모든 PHP 오류, 경고 및 알림을 끄는 방법이 있습니까? 이들은 개발 된 사이트에서 유용하지만 보안 상 위험이 크며 사이트를 실제로보기에 좋지 않게 만듭니다.
Drupal 6의 admin / settings / error-reporting 페이지에서 Drupal이 화면에 오류를 기록하는 것을 막을 수 있지만 Drupal 7에서 어디서 찾을 수 있습니까? 누락 된 것 같습니다.
Drupal에서 모든 PHP 오류, 경고 및 알림을 끄는 방법이 있습니까? 이들은 개발 된 사이트에서 유용하지만 보안 상 위험이 크며 사이트를 실제로보기에 좋지 않게 만듭니다.
Drupal 6의 admin / settings / error-reporting 페이지에서 Drupal이 화면에 오류를 기록하는 것을 막을 수 있지만 Drupal 7에서 어디서 찾을 수 있습니까? 누락 된 것 같습니다.
답변:
Drupal 7 에서처럼 admin / settings / error-reporting에서 볼 수있는 것과 동일한 페이지가 이제 admin / config / development / logging에 있습니다.
제안 된 것처럼 Administration » Configuration » Development
(에서 /admin/config/development/logging
) 에서 오류 메시지 표시 를 비활성화 하는 설정을 찾을 수 있지만 오류 / 공지가 완전히 비활성화되지는 않습니다.
Drupal 7은 E_ALL을 시행하기 때문에 여전히 syslog에 기록되며 웹 사이트 성능에 영향을 미치는 최근 로그 에서 볼 수 있습니다 .
통지를 완전히 비활성화하려면 settings.php
또는 php.ini
파일에 다음 줄을 추가해야 합니다.
ini_set('error_reporting', E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED);
통지 및 코딩 표준 경고를 제외한 모든 오류를 표시하십시오.
권장하지 않는 모든 PHP 오류를 침묵 시키려면 설정 파일을 추가 할 수 있습니다.
error_reporting(0); // Disable all errors.
만나다: error_reporting()
E_ALL
로깅을 위한 책임있는 Drupal 7 핵심 코드 (파일 :) includes/bootstrap.inc
:
// Enforce E_ALL, but allow users to set levels not part of E_ALL.
error_reporting(E_ALL | error_reporting());
참조 :
설정은 항상 admin / config / development / logging에 있습니다. :)
위에 게시 된 솔루션 kenorb에 따옴표를 추가해야 할 수도 있습니다.
ini_set('error_reporting', 'E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR');
이를위한 모듈이 있습니다 :
https://www.drupal.org/project/errorlevelpermission
프로젝트 페이지에서 :
그래서 당신은 할 수 있습니다