質問

私は非常に単純なサイトでlog4phpをインストールしようとしています(それが動作する方法を学ぶことを試みること)。 Apacheは/ etc / vhostにインストールされています。

DocumentRoot "/ home / fferri /ワークスペース/サイト - チュートリアル/ www" servernameチュートリアル.localhost. php_value auto_prepend_file "/home/fferri/workspace/site-tutorial/www/configureSite.php" 私のサイトは/ home / fferri / workspace / site-tutorial / www /および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
.

だから、最初に、ロガーが見つかりますが、LoggerHierarchyのロード時には、Loggerはそうではありません。なぜ????

解決済み:誤差は、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