1

私は ZF2 を学習しており、ZF2 を使用して安らかな Web サービス アーキテクチャをセットアップしようとしています。ログファイルの作成に問題があります。

これが私のモジュール構成です:

'service_manager' => array(
    'factories' => array(
        'loggingService' => function(\Zend\ServiceManager\ServiceManager $serviceManager) {
            $logger = new \Zend\Log\Logger();
            $writer = new \Zend\Log\Writer\Stream('/home/mani/logs/forum.log');
            $logger->addWriter($writer);
            return $logger;
        }
    )
)

ここでは、ロガーをサービスとして作成し、コントローラーでコンストラクターを使用して logginService を注入しようとしました。

public function createService(ServiceLocatorInterface $serviceLocator) {

    $coreServiceLocator = $serviceLocator->getServiceLocator();
    $loggingService = $coreServiceLocator->get('loggingService');

    return new QuestionController($loggingService);
}

うまくいくと思いますが、ZF2 はログ ファイルを作成できず、次のメッセージが表示されます。

fopen(/home/mani/logs/forum.log): failed to open stream: No such file or directory

だから私の混乱は、ZF2 がログ ファイルを作成できるか、それとも手動で作成する必要があるかということです。

4

2 に答える 2

0

私の意見では、許可の問題があると思います。たとえば、/tmp/app.log でパスを変更してみてください。

ありがとう

于 2015-12-12T21:48:19.287 に答える