2014-01-15 1 views
1

에 나타나면 누군가이 문제를 해결할 수 있기를 바랍니다.전체 CI 슈퍼 오브젝트가 예외 트레이스

내 Codeigniter 사이트에서 예외가 throw 될 때마다 전체 CI '수퍼 개체'가 추적에 표시됩니다. 사용자가 볼 수있는 예외 사항을 정상적으로 인쇄하지는 않을 것이므로 걱정하지 않을 것입니다.하지만 제 관심사는 중요한 정보입니다. 예를 들어, 내 DB 사용자 이름 및 암호, 세션 ID 및 암호화 키, 전체 캘린더 클래스 또는 전체 페이지 매김 클래스와 같은 사소한 것들. 이러한 보안 문제와 함께 예외의 단순한 길이로 인해 문제를 해결하는 데 어려움이 생길 수 있습니다. 실제로 관심있는 정보를 찾을 수 있습니다.

버그 또는 기능인지 알기위한 예외 사항에 대해 충분히 알지 못해서 누군가가이를 밝힐 수 있기를 바랍니다. 여기에 운이 없다면 아마 CI의 github에 문제로 제출할 것입니다.

도움 주셔서 감사합니다.

답변

0

print_r()을 사용하여 브라우저 대신 서버의 오류 로그로 출력하는 것이 좋습니다. 아래처럼 error_log() 기능을 사용하여이 작업을 수행 할 수 있습니다

error_log(print_r($your_exception_here, true));

print_r()의 두 번째 true 매개 변수는 자동으로 브라우저로 바로 출력하는 대신 문자열을 반환합니다.

이것은 분명히 브라우저에서 빠른 모양 대신 오류 로그를 확인해야한다는 것을 의미하지만 추가 단계는 보안 및/또는 사용자 환경에서 유용 할 것입니다.

+0

걱정은 실제로 출력하는 방법이 아니지만 정보가 예외로 시작하는 이유는 무엇입니까? –

+0

나는 그것이 스택 트레이스 (일종의)로 사용될 수 있도록 예외가 포함되어야한다고 생각한다. 사용자에게 예외가 표시되지 않는다고 가정하면 예외가 발생한 상황의 전체 세부 정보를 제공하는 것이 좋습니다. –