문제

매우 간단한 사이트에 log4php를 설치하려고합니다 (작동 방식을 배우려고). Apache는 / etc / in / etc / vhost가 다음과 같이 정의됩니다.

문서 루트 "/ 홈 / FFERI / 작업 공간 / 사이트 - 튜토리얼 / www" ServerName Tutorial.LocalHost. php_value auto_preper_file "/home/fferri/workspace/site-tutorial/www/configuresite.php" 내 사이트는 / 홈 / ffferri / workspace / site-tutorial / www / and log4php 폴더가 /home/fferri/workspace/site-tutorial/services/lib/log4php-0.9/src/log4php /

에 있습니다.

다음,

를 정의합니다.
define('LOG4PHP_DIR', "/home/fferri/workspace/site-tutorial/services/lib/log4php-0.9/src/log4php/");
.

configuresite.php

및 다른 파일로, 나는 init log4php :

를 시도합니다.
include(LOG4PHP_DIR."/Logger.php");
$log = Logger::getLogger("main");
$log->info("foo");
$log->warn("bar");
.

오류는 항상 동일합니다.

Fatal error: Class 'Logger' not found in /home/fferri/workspace/site-tutorial/services/lib/log4php-0.9/src/log4php/LoggerRoot.php on line 37
.

loggerroot.php 및 logger.php가 동일한 폴더에 있음을 말할 가치가 있습니다. 서버와 내 사이트가 동일한 폴더에 없기 때문에 경로 문제가 있지만 힌트가 필요하기 때문에 경로 문제가 발생합니다

오류의 완전한 스택 추적 추가 :

    [22-May-2012 11:34:38] PHP Fatal error:  Class 'Logger' not found in /home/fferri/workspace/site-tutorial/services/lib/log4php-0.9/src/log4php/LoggerRoot.php on line 36
[22-May-2012 11:34:38] PHP Stack trace:
[22-May-2012 11:34:38] PHP   1. {main}() /home/fferri/workspace/site-tutorial/www/index.php:0
[22-May-2012 11:34:38] PHP   2. require_once() /home/fferri/workspace/site-tutorial/www/index.php:12
[22-May-2012 11:34:38] PHP   3. require_once() /home/fferri/workspace/site-tutorial/www/greet_at_opening.php:11
[22-May-2012 11:34:38] PHP   4. require_once() /home/fferri/workspace/site-tutorial/services/lib/log4php-0.9/src/log4php/Logger.php:24
[22-May-2012 11:34:38] PHP   5. require_once() /home/fferri/workspace/site-tutorial/services/lib/log4php-0.9/src/log4php/LoggerCategory.php:27
[22-May-2012 11:34:38] PHP   6. require_once() /home/fferri/workspace/site-tutorial/services/lib/log4php-0.9/src/log4php/spi/LoggerLoggingEvent.php:28
[22-May-2012 11:34:38] PHP   7. require_once() /home/fferri/workspace/site-tutorial/services/lib/log4php-0.9/src/log4php/LoggerManager.php:29
[22-May-2012 11:34:38] PHP   8. require_once() /home/fferri/workspace/site-tutorial/services/lib/log4php-0.9/src/log4php/LoggerHierarchy.php:28
.

이므로 먼저 로거가 발견되었지만 로거로드에서 로거는 없으며 로거가 아닙니다. 왜 ????

해결 : Log4PHP-0.9 및 PHP5를 함께 사용하는 데 오류가 있습니다. Apache Web (2.1)에있는 라이브러리를 다운로드하면 문제가 해결됩니다.

감사합니다!

도움이 되었습니까?

해결책 2

LOG4PHP-0.9 및 PHP5를 함께 사용하는 데 오류가 있습니다.Apache Web (2.1)에있는 라이브러리를 다운로드하면 문제가 해결됩니다.

다른 팁

dirname(__FILE__)를 사용하면 더 잘 보일 것입니다.

나는 또한 그것이 경로 일 것이라고 생각 ...

클래스 이름을 수상 할 수 있습니다.logger.php에서 new Logger를 호출합니까?

include(LOG4PHP_DIR."/Logger.php");
$log = new Logger();
$log->info("foo");
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top